Django 是什么

子凡 问答 2019-05-23 14:49:05 阅读(...)

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

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

Django

这套框架是以比利时的吉普赛爵士吉他手 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 的部分)无法使用。

收藏 0个人收藏
走进科技生活方式

相关推荐

  • Dynamic Link Library 动态链接库

    动态链接库文件是什么

    动态链接库文件是一种不可执行的二进制程序文件,它允许程序共享执行特殊任务所必需的代码和其他资源,它们向运行于Windows操作系统下的程序提供代码、数据或函数,程序可根据 DLL 文件中的指令打开、启用、查询、禁用和关闭驱动程序。
  • Computer time 电脑时间

    电脑系统时间不正确是什么原因

    电脑系统时间不对可能是CMOS电池没电了,更换电池就好;也可能是 CMOS 电池接触不良引起的,在接触点塞进一小片铜片;还可能是主板电路有问题建议返修;病毒也会引起电脑系统时间不对,病毒引起直接给电脑杀毒,再更改时间即可。
  • Random access memory 随机存储器

    RAM是什么

    RAM(运存,运行内存)是一种在手机中用来暂时保存数据的元件,相当于电脑中的内存条。它可以随时读写,而且速度很快,主要用于存储短时间使用的程序,特点是随机存取、存在易失性、对静电敏感、访问速度快、需要刷新,可分为静态RAM和动态内存两大类。
  • JsRender

    JsRender是什么

    JsRender 是 jQuery 模板,专为高性能的纯字符串渲染而优化,无需 DOM 和其他 jQuery 依赖。允许定义一次样板结构并重复使用它来动态生成 HTML。
  • doT.js 模板引擎框架

    doT.js是什么

    doT.js是一个JavaScript模板框架,在web前端使用dot.js作为模板引擎,主要的用途就是,在写好的模板上,放进数据,生成含有数据的html代码。
  • ART-TEMPLATE

    ART-TEMPLATE是什么

    ART-TEMPLATE是一个简约、高性能的JS模板引擎。采用作用域预声明的技术来优化模板渲染速度,从而获得接近 JavaScript 极限的运行性能,并且同时支持 NodeJS 和浏览器。