Django 简明教程
Django – MVT Architecture
大多数 Web 框架都实现了 MVC(模型-视图-控制器)架构。Django 使用 MVC 的一种变体,并且称它为 MVT(代表模型-视图-模板)架构。
The Advantage of Using a Web Framework
一般来说,一个软件框架是一个标准、可重用的软件平台,有助于快速开发软件应用程序。与此相反,一个 web framework (也称作 Web 应用程序框架)比如 Django 提供了构建 Web 应用程序、API 和 Web 服务所需的通用功能。
采用 Web 框架的主要优点在于,它提供开箱即用的支持来执行 Web 开发过程中的常见操作。例如,您可以轻松地将您的应用程序连接至数据库。
通常,该框架能够更有效地处理诸如会话管理之类的任务。同样地,它与模板工具集成在一起,以便在 Web 页面上呈现动态内容。
The MVC Architecture
这种设计模式将整个 Web 应用程序开发过程分成了三层。下图解释了这三层之间的相互作用。
在 MVC 方法中,用户请求会被控制器拦截。它与视图层与模型层协调,以将适当的响应发回客户端。
The Model Layer
模型被称为最低层,这意味着它负责维护数据。它处理数据。
模型层连接至数据库。它响应控制器的请求,因为控制器本身永远不会直接与数据库通信。模型往返式地与数据库通信,然后将所需的数据提供给控制器。
模型负责数据定义、其处理逻辑与后端数据库的交互。
The MVT Architecture
Django 框架采用了 MVT 方法。这是 MVC 方法的一个微小变体。缩写 MVT 代表模型、视图和模板。
在这里,模型同样是应用程序的数据层。视图实际上是承担处理逻辑的层。模板是表现层。
Components of a Django Application
Django 应用程序包含以下组件 −
-
URL dispatcher
-
View
-
Model
-
Template
The URL Dispatcher
Django 的 URL 调度机制等同于 MVC 架构中的控制器。Django 项目的包文件夹中的 urls.py 模块作为该调度器。它定义了 URL 模式。每个 URL 模式都会映射到一个视图函数,当发现客户端请求的 URL 与其匹配时调用该函数。
每个应用中定义的 URL 模式都包含其中,位于该项目之下。
当服务器以客户端 URL 的形式接收请求时,调度器会将其模式与 urls.py 中提供的模式进行匹配,并将应用程序流路由到其关联的视图。