惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园_首页
大猫的无限游戏
大猫的无限游戏
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Apple Machine Learning Research
Apple Machine Learning Research
B
Blog
B
Blog RSS Feed
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
P
Proofpoint News Feed
MyScale Blog
MyScale Blog
Engineering at Meta
Engineering at Meta
量子位
H
Hackread – Cybersecurity News, Data Breaches, AI and More
T
Tailwind CSS Blog
Stack Overflow Blog
Stack Overflow Blog
N
Netflix TechBlog - Medium
T
The Blog of Author Tim Ferriss
U
Unit 42
aimingoo的专栏
aimingoo的专栏
博客园 - 叶小钗
博客园 - 【当耐特】
云风的 BLOG
云风的 BLOG
博客园 - Franky
博客园 - 聂微东

陈少文的网站

巨变与机遇的未来十年 Kubernetes 平台管理软件压力测试方案 使用镜像部署 Hexo 静态页面 终于等到你 - GitHub 镜像仓库服务(ghcr.io) 一起来学 Go --(6)Interface 一起来学 Go --(5)Goroutine 和 Channel 什么是函数式编程 如何在 Kubernetes 集群集成 Kata 柯里化与偏函数 使用 PyGithub 自动创建 Label 软件产品是团队能力的输出 Helm 2 、Helm 3 比较 IoT 变现 Kubernetes 中的 DNS 服务 国内的 Helm 镜像源 Harbor 使用自签证书支持 Https 访问 DevOps 工具链之 Prow 如何使用 kfctl 安装 Kubeflow VS Code 无法下载 Go 插件的工具包 工程师更应具有服务精神 你不知道的 Docker 使用技巧 使用 Docker 运行 Tensorflow 论中国 什么是左移 如何清空 Git 仓库全部历史记录 一禅小和尚 有风吹过厨房 时间的玫瑰 如何在 CentOS 安装 GPU 驱动 开发 Tips(19)
Django 标准库介绍
微信公众号 · 2017-05-11 · via 陈少文的网站

Django的标准库存放在 django.contrib 包中。每个子包都是一个独立的附加功能包。 这些子包一般是互相独立的,不过有些django.contrib子包需要依赖其他子包

在 django.contrib 中对函数的类型并没有强制要求 。其中一些包中带有模型(因此需要你在数据库中安装对应的数据表),但其它一些由独立的中间件及模板标签组成。

django.contrib 开发包共有的特性是: 就算你将整个django.contrib开发包删除,你依然可以使用 Django 的基础功能而不会遇到任何问题。 当 Django 开发者向框架增加新功能的时,他们会严格根据这一原则来决定是否把新功能放入django.contrib中。

django.contrib 由以下开发包组成:

  • admin : 自动化的站点管理工具
  • admindocs:为Django admin站点提供自动文档
  • auth : Django的用户验证框架
  • comments : 一个评论应用
  • contenttypes : 这是一个用于引入文档类型的框架,每个安装的Django模块作为一种独立的文档类型。
  • csrf : 这个模块用来防御跨站请求伪造(CSRF)
  • databrowse:帮助你浏览数据的Django应用
  • flatpages : 一个在数据库中管理单一HTML内容的模块
  • formtools:一些列处理表单通用模式的高级库。
  • gis:为Django提供GIS(Geographic Information Systems)支持的扩展
  • humanize : 一系列 Django 模块过滤器,用于增加数据的人性化。
  • localflavor:针对不同国家和文化的混杂代码段。
  • markup : 一系列的 Django 模板过滤器,用于实现一些常用标记语言。
  • redirects : 用来管理重定向的框架。
  • sessions : Django 的会话框架
  • sitemaps : 用来生成网站地图的 XML 文件的框架。
  • sites : 一个让你可以在同一个数据库与 Django 安装中管理多个网站的框架。
  • syndication : 一个用 RSS 和 Atom 来生成聚合订阅源的的框架。
  • webdesign:对设计者非常有用的Django扩展。

其他django目录介绍:

  • conf。
    主要有两个作用:(1) 处理全局配置, 比如数据库、加载的应用、 MiddleWare等 。(2) 处理urls配置, 就是url与view的映射关系。
  • core。
    Django的核心处理库,包括url分析、处理请求、缓存等,其中处理请求是核心了,比如处理fastcgi就是由-
    wsgi.py处理。
  • db。
    顾名思义,处理与数据库相关的,就是ORM。
  • dispatch (分派,派遣)
    其实这不是Django原创,是pydispatch库,主要处 理消费者-工作者模式。
  • forms。
    处理html的表单
  • middleware。
    中间件,就是处理HTTP的request和response的,类似插件。比如默认的common中间件的一个功能:当一个页面没有找对对应的 pattern时, 会自定加上‘/’重新处理。比如访问/blog时,而定义的pattern是’^blog/$’, 所以找不到对应的pattern,会自动再用/blog/查找,当然前提是 APPEND_SLASH=True。
  • template。
    Django的模板
  • templatetags。
    处理 Application 的 tag 的 wrapper,就是将 INSTALLED_APPS 中所有的 templatetags 目录添加到 django.templatetags 目录中,则当使用 load blog 记载tag时,就可以使用 import django.templatetags.blog 方式加载了。不过这有一个问题,如果其他 Application目录中也有blog.py, 这会加载第一个出现blog.py的tag。
  • utils。
    公共库,很多公用的类都在放在这里。
  • views
    最基本的view方法。