/ 知识库     / 试卷库

Django简介

Django是一个开放源代码的 Web 应用框架,使用 Python 语言写成。采用了MTV的框架模式,即模型(Model)、模板 (Template) 和视图(View)。它最初被用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站,即内容管理系统(ContentManagementSystem,CMS)软件,并于2005年7月在伯克利软件套件(Berkeley SoftwareDistribution,BSD)许可证下发布。这套框架是以比利时的吉普赛爵士吉他手 Django的名字来命名的。Django是一个基于MVC构造的框架。但是在 Django中,控制器接受用户输入的部分由框架自行处理,所以 Django 更关注的是模型、模板和视图,称为MTV模式。

  • 模型:即数据存取层,处理与数据相关的所有事务,包括如何存取、如何验证有效性、包含哪些行为以及数据之间的关系等。

  • 模板:即表现层,处理与表现相关的决定。

  • 视图:即业务逻辑层,负责存取模型及调取恰当模板的相关逻辑,是模型与模板的桥梁。

Diango的主要目标是简便、快速地开发数据库驱动的网站。它强调代码复用,多个组件可以很方便地以“插件”形式服务于整个框架。Django 有许多功能强大的第三方插件,甚至可以很方便地开发出自己的工具包,这使 Django 具有很强的可扩展性。同时Django还强调快速开发和避免编写重复代码原则Django基于MVC的设计十分优美。

  • 对象关系映射(Object-Relational Mapping,ORM):以Python 类形式定义数据模型,利用ORM将模型与关系数据库连接起来,从而将得到一个非常容易使用的数据库应用程序接口(Application Program Interface,API),同时也可以在Django中使用原始的SQL 语句。

  • URL分派:使用正则表达式匹配URL,开发时可以设计任意的 URL,没有框架的特殊限定。

  • 模板系统:使用 Django 强大、可扩展的模板语言,可以分隔设计和 Python 代码并且具有可继承性。

  • 表单处理:可以方便地生成各种表单模型,实现表单的有效性检验;还可以方便地从定义的模型实例生成相应的表单。

  • Cache 系统:完善的缓存系统,支持多种缓存方式。

  • 会话(Session):用户登录与权限检查,快速开发用户会话功能。

  • 国际化:内置国际化系统,方便开发出多种语言的网站。

  • admin管理系统:Django自带一个admin site,类似于内容管理系统,功能非常强大。