当前位置:首页 > 资讯 > 正文

Django 是什么

Django是一个Python框架。开放源代码的Python Web应用框架,采用了MVT的软件设计模式,即模型Model,视图View和模板Template。使用这种架构,程序员可以方便、快捷地创建高品质、易维护、数据库驱动的应用程序。

Django 是一个开放源代码的 Web 应用框架,由 Python 写成。采用了 MVT 的软件设计模式,即模型 Model,视图 View 和模板 Template。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的。并于 2005 年 7 月在 BSD 许可证下发布。

Django 是什么  第1张

这套框架是以比利时的吉普赛爵士吉他手 Django Reinhardt 来命名的。

Django 的主要目标是使得开发复杂的、数据库驱动的网站变得简单。Django 注重组件的重用性和“可插拔性”,敏捷开发和 DRY 法则(Don’t Repeat Yourself)。在 Django 中 Python 被普遍使用,甚至包括配置文件和数据模型。

Django 于 2008 年 6 月 17 日正式成立基金会。

Django 框架的核心包括:一个 面向对象 的映射器,用作数据模型(以 Python 类的形式定义)和关系型数据库间的介质;一个基于正则表达式的 URL 分发器;一个视图系统,用于处理请求;以及一个模板系统。

核心框架中还包括:

  • 一个轻量级的、独立的 Web 服务器,用于开发和测试。
  • 一个表单序列化及验证系统,用于 HTML 表单和适于数据库存储的数据之间的转换。
  • 一个缓存框架,并有几种缓存方式可供选择。
  • 中间件支持,允许对请求处理的各个阶段进行干涉。
  • 内置的分发系统允许应用程序中的组件采用预定义的信号进行相互间的通信。
  • 一个序列化系统,能够生成或读取采用 XML 或 JSON 表示的 Django 模型实例。
  • 一个用于扩展模板引擎的能力的系统。

Django 包含了很多应用在它的 contrib 包中,这些包括:

  • 一个可扩展的认证系统
  • 动态站点管理页面
  • 一组产生 RSS 和 Atom 的工具
  • 一个灵活的评论系统
  • 产生 Google 站点地图(Google Sitemaps)的工具
  • 防止跨站请求伪造(cross-site request forgery)的工具
  • 一套支持轻量级标记语言(Textile 和 Markdown)的模板库
  • 一套协助创建地理信息系统(GIS)的基础框架

Django 可以运行在启用了 mod_python 的 Apache 2 上,或是任何 WSGI 兼容的 Web 服务器。Django 也有启动 FastCGI 服务的能力,因此能够应用于任何支持 FastCGI 的机器上。

下列数据库引擎被 Django 官方支持:PostgreSQL、MySQL、SQLite、Oracle

Microsoft SQL Server 的适配器正在开发中,处于试验阶段。(注:SQL Server 的支持在 1.0 版本中已经被完全去除)

自 Django 1.0 起,已经可以利用 Jython 运行在任何 J2EE 服务器。除 CPython 外,Django 当前官方支持使用 Jython 2.7b2 运行,但不保证与 CPython 上的行为完全兼容,并应预期一些功能(如使用 Pillow 的部分)无法使用。