发布网友 发布时间:2024-10-23 17:17
共1个回答
热心网友 时间:2024-11-02 00:44
导读:本篇文章首席CTO笔记来给大家介绍有关django的相关软件模块是什么的相关内容,希望对大家有所帮助,一起来看看吧。
Django为我们提供了众多的开发指令,大部分繁琐的操作都被Django集成在简洁的命令行提示符中实现。现在打开命令提示符,进入到想要创建
应用的目录后键入django-admin.pystartproject
news命令,调用Django的控制台命令新建一个名为news的工程,与此同时Django还在新创建的news文件夹下生成以下四个分工不同的文
件。
1.__init__.py
文件__init__.py可以向Python编译器表明当前文件夹下的内容是Python工程模块。
2.manage.py
manage.py是Python脚本文件,与Django的命令行工具django-admin.py配合,可以对建立的工程进行管理配置。
3.settings.py
这是Django工程的配置文件,与工程相关的工程模块和数据库全局配置信息都在settings.py中设置。
4.urls.py
文件urls.py负责配置URL的地址映射以及管理URL的地址格式。
当新的工程建立好之后,假如迫不及待就想知道新建工程的模样,Django已经为你准备好一款轻量级的Web服务器以便在开发过程中随时测试使用。
开发者只需在命令提示符下进入工程目录,键入命令manage.py
runserver,就可以启动Web服务器来测试新建立的工程,如果启动没有错误,将可以看到下面这样的提示信息:逗Development
serverisrunningat地
表示当前工程已经可以通过本机的8000端口访问。通过浏览器打开上述地址Django项目初始页面将会出现在你面前。
什么是django?Django是用Python开发的一个免费开源的Web框架,提供了许多网站后台开发经常用到的模块,使开发者能够专注于业务部分。并且囊括的Web应用部分可以用于快速搭建高性能、优雅的网站。并且提供了通用Web开发模式的高度抽象,通过DRY的理念为频繁进行的编程作业提供了快速解决方法。
Django能在开源发行之后吸引众多追随者,离不开它所具备的以下优点:
①齐全的功能。自带大量常用工具和框架,可轻松、迅速开发出一个功能齐全的Web应用。
②完善的文档。Django已发展十余年,具有广泛的实践案例,同时Django提供完善的在线文档,Django用户能够更容易地找到问题的解决方案。
③强大的数据库访问组件。Django自带一个面向对象的、反映数据模型与关系型数据库间的映射关系的映射器,开发者无须学习SQL语言即可操作数据库。
④灵活的URL映射。Django提供一个基于正则表达式的URL分发器,开发者可灵活地编写URL。
⑤丰富的模板语言。Django模板语言功能丰富,支持自定义模板标签;Django也支持使用第三方模板系统,如jinja2等。
⑥健全的后台管理系统。Django内置了一个后台数据管理系统,经简单配置后,再编写少量代码即可使用完整的后台管理功能。
⑦完整的错误信息提示。Django提供了非常完整的错误信息提示和定位功能,可在开发调试过程中快速定位错误或异常。
⑧强大的缓存支持。Django内置了一个缓存框架,并提供了多种可选的缓存方式。
⑨国际化。Django包含了一个国际化系统,Django组件支持多种语言。
Django框架是什么?Django是基于Python的免费和开放源代码Web框架,它遵循模型-模板-视图(MTV)体系结构模式。它由DjangoSoftwareFoundation(DSF)维护,这是一个由非营利组织成立的组织。
Django的主要目标是简化复杂的,数据库驱动的网站的创建。该框架强调组件的可重用性和“可插入性”,更少的代码,低耦合,快速开发以及不重复自己的原则。整个过程都使用Python,甚至用于设置文件和数据模型。Django还提供了一个可选的管理创建,读取,更新和删除界面,该界面通过自省动态生成并通过管理模型进行配置。
一些使用Django的知名网站包括公共广播服务,Instagram,Mozilla,华盛顿时报,Disqus,Bitbucket,和Nextdoor。
Django创建于2003年秋天,当时《劳伦斯日报》世界报纸的网络程序员AdrianHolovaty和SimonWillison开始使用Python来构建应用程序。西蒙·威利森(SimonWillison)的实习期结束前不久,雅各布·卡普兰·莫斯(JacobKaplan-Moss)在Django的发展中就被聘用了。它于2005年7月在BSD许可下公开发布。该框架以吉他手DjangoReinhardt的名字命名。2008年6月,宣布新成立的Django软件基金会(DSF)将来将维护Django。
2015年7月,与一些Django联合创始人和开发人员建立联系的软件咨询公司RevolutionSystems在劳伦斯举办了10周年纪念活动。
Django的设计理念如下:
松耦合——Django的目标是使堆栈中的每个元素彼此。
更少的编码——更少的代码,因此可以快速开发。
不重复自己(DRY)——一切都应该只在一个地方开发,而不是一次又一次地重复。
快速开发——Django的理念是尽一切可能促进超快速开发。
简洁的设计——Django严格按照自己的代码维护简洁的设计,并易于遵循最佳的Web开发实践。
Django的一些优势如下:
对象关系映射(ORM)支持——Django在数据模型和数据库引擎之间建立了桥梁,并支持包括MySQL,Oracle,Postgres等在内的大量数据库系统。
多语言支持——Django通过其内置的国际化系统支持多语言网站。因此,您可以开发支持多种语言的网站。
框架支持——Django内置了对Ajax,RSS,缓存和其他各种框架的支持。
GUI——Django为管理活动提供了一个很好的即用型用户界面。
开发环境——Django带有轻量级的Web服务器,以促进端到端应用程序的开发和测试。
Django是PythonWeb框架。和大多数现代框架一样,Django支持MVC模式。
关于Python的基础问题可以看下这个网页的视频教程,网页链接,。
django一个项目多个App项目搭建
django可以在一个项目中存在多个app,如一个大门户网站中可以包含论坛,新闻等内容,其中每一个模块称之为一个App,也可以理解为一个个的小型项目最终集成在一个门户网站中最终呈现给用户
本次测试以python2.7
其次分别建立相应的App模块:todo,oa,web
如图所示:
在以上的配置中导入了include对配置进行包装
同时导入了index函数,index在todo,oa,web中的views文件分别建立
同时指定了一个打开的默认首页,即webapp下的index/pre
此时运行程序,页面如图所示
如果此时输入的路径为localhost:8000/web/inex,
localhost:8000/oa/inex,
localhost:8000/toto/index将得到不同app的展现,
djangorestframework中文介绍注意:这是版本3的文档。还提供了版本2的文档。
DjangoRESTframework是一个强大且灵活的工具包,用以构建WebAPIs。
为什么要使用RESTframework?
RESTframeworkisacollaboratively(合作地)fundedproject(基金项目).IfyouuseRESTframeworkcommercially(商业化的)westrongly(强烈)encourage(建议)youtoinvest(投资)initscontinueddevelopment(可持续发展)bysigningupforapaidplan.(注册付费计划)
Everysingle(每次简单)sign-uphelpsusmakeRESTframeworklong-termfinancially(财政上)sustainable(财务上可持续发展)
Manythankstoallourwonderfulsponsors(赞助商),andinparticulartoourpremiumbackers(优质的支持者),Rover,Sentry,Stream,Machinalis,andRollbar.
(非常感谢我们所有的优秀赞助商,特别是我们的优秀支持者,Rover,Sentry,Stream,Machinalis,andRollbar.
)
RESTframework有以下的要求:
Python(2.7,3.2,3.3,3.4,3.5,3.6)
Django(1.7+,1.8,1.9,,2.0)
下面是可选的包:
Installusingpip,includinganyoptionalpackagesyouwant...(使用pip安装,包括任何你想要的可选包裹...)
...orclonetheprojectfromgithub.(或者从GitHub复制项目)
Add'rest_framework'toyourINSTALLED_APPSsetting.
Ifyou'reintendingtousethebrowsableAPIyou'llprobablyalsowanttoaddRESTframework'sloginandlogoutviews.Addthefollowingtoyourrooturls.pyfile.(如果您打算使用可浏览的API,您可能还需要添加REST框架的登录和注销视图。将以下内容添加到您的根urls.py文件中。)
NotethattheURLpathcanbewhateveryouwant.(注意,url路径可以是任何你想要的。)
Let'stakealookataquickexampleofusingRESTframeworktobuildasimplemodel-backedAPI.让我们来看看一个使用RESTframework构建一个简单模型支持api的快速示例。
We'llcreatearead-writeAPIforaccessinginformationontheusersofourproject.(我们将创建一个读写api,用于访问项目用户的信息。)
AnyglobalsettingsforaRESTframeworkAPIarekeptinasingleconfigurationdictionarynamedREST_FRAMEWORK.Startoffbyaddingthefollowingtoyoursettings.pymole:(RESTframeworkapi的任何全局设置都保存在一个名为“rest_wramework”的配置词典中。首先在“环境”模块中添加以下内容:)
Don'tforgettomakesureyou'vealsoaddedrest_frameworktoyourINSTALLED_APPS.(别忘了确保你已经在“INSTALLED_APPS”中添加了“rest_framework”。)
We'rereadytocreateourAPInow.Here'sourproject'srooturls.pymole:(我们准备好创建我们的api了。这是我们项目的根源urls.py模块:)
YoucannowopentheAPIinyourbrowserat,andviewyournew'users'API.Ifyouusethelogincontrolinthetoprightcorneryou'llalsobeabletoadd,createanddeleteusersfromthesystem.(现在,您可以在浏览器中输入‘’打开api,并查看您的新“用户”api。如果您使用右上角的登录控件,您也可以从系统中添加、创建和删除用户。)
Can'twaittogetstarted?Thequickstartguideisthefastestwaytogetupandrunning,andbuildingAPIswithRESTframework.(等不及要开始了?快速启动指南是最快的建立和运行的方式,并建立RESTframework的apis。)
ThetutorialwillwalkyouthroughthebuildingblocksthatmakeupRESTframework.It'lltakealittlewhiletogetthrough,butit'llgiveyouacomprehensiveunderstandingofhoweverythingfitstogether,andishighlyrecommendedreading.(本教程将帮助您完成组成REST框架的构建块。这需要一点时间来完成,但是它会给你一个全面的理解如何把一切结合起来,并强烈推荐阅读。)
ThereisaliveexampleAPIofthefinishedtutorialAPIfortestingpurposes,availablehere.这里有一个用于测试目的的完成教程API的实例化API,这里可获得
TheAPIguideisyourcompletereferencemanualtoallthefunctionalityprovidedbyRESTframework.(API指南是您对REST框架提供的所有功能的完整参考手册)
GeneralguidestousingRESTframework.(使用REST框架的一般指南。)
SeetheContributionguidelinesforinformationonhowtoclonetherepository,runthetestsuiteandcontributechangesbacktoRESTFramework.(有关如何克隆存储库、运行测试套件以及向REST框架贡献更改的信息,请参阅贡献指南。)
ForsupportpleaseseetheRESTframeworkdiscussiongroup,trythe#restframeworkchannelonirc.freenode.net,searchtheIRCarchives,orraiseaquestiononStackOverflow,makingsuretoincludethe'django-rest-framework'tag.(要获得支持,请参阅REST框架讨论组,在IRC.freenode.net上尝试#restframework通道,搜索IRC档案,或者对StackOverflow提出问题,确保包含“django-rest-framework”标签。)
Forprioritysupportpleasesignupforaprofessionalorpremiumsponsorshipplan.(如需优先支持,请注册专业或优质赞助计划。)
ForupdatesonRESTframeworkdevelopment,youmayalsowanttofollowtheauthoronTwitter.(对于REST框架开发的更新,您可能还希望在Twitter上跟随作者。)
Follow@_tomchristie
Ifyoubelieveyou’vefoundsomethinginDjangoRESTframeworkwhichhassecurityimplications,pleasedonotraisetheissueinapublicforum.
Sendadescriptionoftheissueviaemailtorest-framework-security@googlegroups.com.Theprojectmaintainerswillthenworkwithyoutoresolveanyissueswhererequired,priortoanypublicdisclosure.
Copyright(c)2011-2017,TomChristieAllrightsreserved.
Redistributionanseinsourceandbinaryforms,withorwithoutmodification,arepermittedprovidedthatthefollowingconditionsaremet:
Redistributionsofsourcecodemustretaintheabovecopyrightnotice,thislistofconditionsandthefollowingdisclaimer.Redistributionsinbinaryformmustreprocetheabovecopyrightnotice,thislistofconditionsandthefollowingdisclaimerinthedocumentationand/orothermaterialsprovidedwiththedistribution.
THISSOFTWAREISPROVIDEDBYTHECOPYRIGHTHOLDERSANDCONTRIBUTORS"ASIS"ANDANYEXPRESSORIMPLIEDWARRANTIES,INCLUDING,BUTNOTLIMITEDTO,THEIMPLIEDWARRANTIESOFMERCHANTABILITYANDFITNESSFORAPARTICULARPURPOSEAREDISCLAIMED.INNOEVENTSHALLTHECOPYRIGHTHOLDERORCONTRIBUTORSBELIABLEFORANYDIRECT,INDIRECT,INCIDENTAL,SPECIAL,EXEMPLARY,ORCONSEQUENTIALDAMAGES(INCLUDING,BUTNOTLIMITEDTO,PROCUREMENTOFSUBSTITUTEGOODSORSERVICES;LOSSOFUSE,DATA,ORPROFITS;ORBUSINESSINTERRUPTION)HOWEVERCAUSEDANDONANYTHEORYOFLIABILITY,WHETHERINCONTRACT,STRICTLIABILITY,ORTORT(INCLUDINGNEGLIGENCEOROTHERWISE)ARISINGINANYWAYOUTOFTHEUSEOFTHISSOFTWARE,EVENIFADVISEDOFTHEPOSSIBILITYOFSUCHDAMAGE.
结语:以上就是首席CTO笔记为大家整理的关于django的相关软件模块是什么的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~