Django标准库
视频锁定
{$ currentTime | date:'mm:ss' $}
{$ timeLeft | date:'mm:ss' $}
Django的标准库存放在 django.contrib
包中。每个子包都是一个独立的附加功能包。这些子包一般是互相独立的,不过有些django.contrib
子包需要依赖其他子包。
在 django.contrib
中对函数的类型并没有强制要求。其中一些包中带有模型(因此需要你在数据库中安装对应的数据表),但其它一些由独立的中间件及模板标签组成。
django.contrib
开发包共有的特性是:就算你将整个django.contrib
开发包删除,你依然可以使用 Django 的基础功能而不会遇到任何问题。当 Django 开发者向框架增加新功能的时,他们会严格根据这一原则来决定是否把新功能放入django.contrib
中。
django.contrib
由以下开发包组成:
admin
: 自动化的站点管理工具。 请查看第6章。admindocs
:为Django admin站点提供自动文档。本书没有介绍这方面的知识;详情请参阅Django官方文档。auth
: Django的用户验证框架。 参见第十四章。comments
: 一个评论应用,目前,这个应用正在紧张的开发中,因此在本书出版的时候还不能给出一个完整的说明,关于这个应用的更多信息请参见Django的官方网站.本书没有介绍这方面的知识;详情请参阅Django官方文档。contenttypes
:这是一个用于引入文档类型的框架,每个安装的Django模块作为一种独立的文档类型。这个框架主要在Django内部被其他应用使用,它主要面向Django的高级开发者。可以通过阅读源码来了解关于这个框架的更多信息,源码的位置在django/contrib/contenttypes/
。csrf
: 这个模块用来防御跨站请求伪造(CSRF)。参见后面标题为”CSRF 防御”的小节。databrowse
:帮助你浏览数据的Django应用。本书没有介绍这方面的知识;详情请参阅Django官方文档。flatpages
: 一个在数据库中管理单一HTML内容的模块。参见后面标题为“Flatpages”的小节。formtools
:一些列处理表单通用模式的高级库。本书没有介绍这方面的知识;详情请参阅Django官方文档。gis
:为Django提供GIS(Geographic Information Systems)支持的扩展。举个例子,它允许你的Django模型保存地理学数据并执行地理学查询。这个库比较复杂,本书不详细介绍。请参看http://geodjango.org/上的文档。humanize
: 一系列 Django 模块过滤器,用于增加数据的人性化。 参阅稍后的章节《人性化数据》。localflavor
:针对不同国家和文化的混杂代码段。 例如,它包含了验证美国的邮编 以及爱尔兰的身份证号的方法。markup
: 一系列的Django模板过滤器,用于实现一些常用标记语言。参阅后续章节《标记过滤器》。redirects
: 用来管理重定向的框架。参看后面的“重定向”小节。sessions
: Django 的会话框架。参见14章。sitemaps
: 用来生成网站地图的 XML 文件的框架。参见13章。sites
: 一个让你可以在同一个数据库与Django安装中管理多个网站的框架。参见下一节。syndication
:一个用RSS和Atom来生成聚合订阅源的的框架。参见13章。webdesign
:对设计者非常有用的Django扩展。到编写此文时,它只包含一个模板标签{% lorem %}
。详情参阅Django文档。
本章接下来将详细描述前面没有介绍过的 django.contrib
开发包内容。
在线练习
{$ activeFileHint $}