Django架构中MVC模式的解析
近期在用Python开发一款应用程序,选择了Django框架。其设计的原理遵从MVC模式。我们从如下三个方面对MVC模式进行剖析。
- MVC对应的含义及各层次对应的功能职责
- Django框架中主要配置文件的用途
- 从用户请求到服务器响应全交互过程来理解配置文件
MVC对应的含义及跟层次对应的功能职责
层次 | 文件 | 职责 |
---|---|---|
M(Models) | Models.py | 模型(Model),即数据存取层:处理与数据相关的所有事务: 如何存取、如何验证有效性、包含哪些行为以及数据之间的关系等。 |
V(Views) | Template,views.py | 视图(View),即表现层: 处理与表现相关的决定, 如何在页面或其他类型文档中进行显示。模板(Template),即业务逻辑层。存取模型及调取恰当模板的相关逻辑。模型与模板的桥梁。 |
C(Controller) | Setting.py,url.py | 处理用户请求 |
Django框架中主要配置文件的含义
在创建后项目webDjango和应用app应用blogs后会生成如下目录树,我们解析下对应文件的含义。
- manage.py:一种命令行工具,允许你以多种方式与该Django项目进行交互。python manage.py help,能列出它所能做的事情。此文件一般情况下不需要改动。
- settings.py:该Django项目的设置与配置。查看并理解这个文件中可用的设置类型及其默认值。
- urls.py:Django项目的URL设置。可视其为你的django网站的目录。
- wsgi.py:(Python Web Server Gateway Interface)服务器网关接口,是Python语言定义的web服务器和web服务程序或者框架之间的一种简单而通用的接口。简单来说就是与apache的交互接口
- admin.py: admin后台管理文件
- migrations:数据库相关目录
- models.py:主要用一个 Python 类来描述数据表。 称为模型(model) 。 运用这个类,你可以通过简单的 Python 的代码来创建、检索、更新、删除 数据库中的记录而无需写一条又一条的SQL语句。
- views.py:包含了页面的业务逻辑。
从用户请求到服务器应该全交互过程来理解配置文件
在开发建站时,因为涉及到的文件较多,难免容易混淆。我们从用户请求应用到服务响应用户请求的交互过程出发,
看整个过程中我们需要修改哪些文件的配置信息。
- 功能层面
- 逻辑层面