Django 架构( Django 架构及其模型、模板、视图和模板语言)3

作者 : 慕源网 本文共2150个字,预计阅读时间需要6分钟 发布时间: 2021-11-20 共211人阅读

本文是Django教程的一部分,您可以点击Django教程系列查看所有教程。

Django架构介绍

Django 是一个免费的开源 Web 应用程序框架,用 Python 语言编写。该框架用于代替 servlets、PHP、javascript 来构建 Web 应用程序后端部分。Django 的初始版本于 2005 年 7 月15发布,由 Django 软件基金会开发。最近发布的Django 框架2.2.7 版已于 2019 年 11 月4完成。现在我们将使用 MVT 了解 Django 架构。

Django 的主要优点是让复杂的数据库包含Web 应用程序的创建尽可能简单,速度快,许多组件隐式可用,可扩展性和安全性好。现在,进入 Django 的架构;它遵循 MVT。

Django 架构

如前所述,Django 遵循 MVT 架构框架。

  • M代表型号
  • V 代表视图
  • T代表模板

MVT 通常与 MVC 非常相似,后者是模型、视图和控制器。这里MVC和MVT的区别在于Django本身做了MVC架构中控制器部分完成的工作。Django 通过使用模板来完成控制器的这项工作。准确地说,模板文件是 HTML 部分和 Django 模板语言(也称为 DTL)的混合体。

下面是 MVT 的架构图。

Django 架构( Django 架构及其模型、模板、视图和模板语言)3

模板处理应用程序的 UI 和架构部分。视图执行应用程序的逻辑部分并与模型交互以获取数据,然后相应地修改模板。如前所述,Django 作为控制器工作并获取链接到应用程序视图部分的 URL,从而将用户响应传输到应用程序。这个完整的交互是通过这个 Django MVT 架构来处理的。当我们创建一个项目时,会创建一些默认文件。

Django 架构( Django 架构及其模型、模板、视图和模板语言)3

我使用上述命令在 my_projects 文件夹中创建了一个新项目。现在让我向您展示执行上述命令后在空文件夹中创建的文件。这些是在我们首先创建的项目下创建的文件。

Django 架构( Django 架构及其模型、模板、视图和模板语言)3

反过来,又创建了一个文件夹和一个 manage.py 文件。现在进入第一个文件夹,我们可以观察到以下文件。

Django 架构( Django 架构及其模型、模板、视图和模板语言)3

因此,上述文件是在创建新项目后自动创建的文件。

  • urls.py:我们知道我们的网页要处理很多链接,所有从一个页面到其他页面的映射都可以在这里完成。
  • wsgi.py:用于部署我们的项目。
  • manage.py:给我们一个可以显示项目的 URL。

Django 架构( Django 架构及其模型、模板、视图和模板语言)3

运行此命令后,输出如下。

输出:

Django 架构( Django 架构及其模型、模板、视图和模板语言)3

在任何 Web 浏览器中使用 URL 检查输出。我们已经了解了这一点,因为应该开始学习如何自己创建项目并对其进行处理,以清楚地了解 MVT 架构如何使用 Django 和 Python 运行。

Django 架构模型

  • 在 Django 中,模型链接到数据库,每个模型都映射到数据库中的单个表。这些字段和方法在文件 models.py 下声明
  • 通过这种与数据库的链接,我们实际上可以从该特定表中获取每条记录或每行,并且可以对该表执行 DML 操作。
  • Django.db.models.model 是这里用到的子类。我们可以通过定义 as from django.db 导入模型来使用 import 语句。
  • 所以在定义了我们的数据库表、列和记录之后;我们将通过在 INSTALLED_APPS 下的 settings.py 文件中定义映射来获取链接到我们应用程序的数据。

Django 视图

  • 这是我们实际上会提到我们的逻辑的部分。这个编码是通过python文件views.py完成的
  • 这个视图也在应用程序被使用时向用户发送响应,简单理解,我们可以说这个view.py可以处理HttpResponse。
  • 现在,在创建视图之后,我们如何将其链接到我们的应用程序?您认为系统将如何理解显示特定视图?这可以通过映射 urls.py 文件中的 views.py 来完成。正如已经提到的,urls.py 跟踪我们创建的所有不同的页面,因此映射每个页面。

Django 模板

  • 此模板可帮助我们以简单的方式创建动态网站。动态网站处理动态数据。动态数据处理的场景是每个用户都显示他们的个性化数据;作为 Facebook 提要、Instagram 提要等。
  • 模板的配置在 INSTALLED_APPS 下的 settings.py 文件中完成。所以python代码会搜索模板子目录下的文件。我们可以创建一个 HTML 文件或从浏览器导入任何动态网页并将其放在模板文件夹下。
  • 之后我们通常在 urls.py 和 views.py 中链接这个文件以获得响应是强制性的。
  • 这样,在将所有这些链接在一起并运行服务器之后,我们就可以准备好我们的 Web 应用程序了。

Django 模板语言

简而言之,它被称为DTL。Django 模板在将数据呈现到网页上时有自己的语法。显示动态变量时,变量名写在花括号内;用“{{variable_name}}”表示。并且要编写 if 条件,语法将定义为:{% if condition %}。最后 if 语法也将遵循相同的规则。Django 在 DTL 中使用渲染函数。这个渲染函数需要三个参数。

  • Request
  • 在settings.py中提到模板的路径
  • 包含所有变量并且可以创建尽可能多的参数。

通过这些渲染函数,我们可以使用我们的 DTL 来制作动态网页。

结论

所以,这就是它的工作原理。用于相互链接以显示我们网页的主要python文件是settings.py、view.py和urls.py

一旦我们在这里分别定义了我们的逻辑,我们就可以有一个链接数据库的工作流,接收用户输入和响应并显示动态网页。安装 Django 后,查看文件并了解它们之间的链接。


慕源网 » Django 架构( Django 架构及其模型、模板、视图和模板语言)3

常见问题FAQ

程序仅供学习研究,请勿用于非法用途,不得违反国家法律,否则后果自负,一切法律责任与本站无关。
请仔细阅读以上条款再购买,拍下即代表同意条款并遵守约定,谢谢大家支持理解!

发表评论

开通VIP 享更多特权,建议使用QQ登录