MVC和MVT框架对比

MVC框架 ——一种常用的设计框架

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,它强制性的使应用程序的输入、处理和输出分开。

M全拼为Model,主要封装对数据库层的访问,对数据库中的数据进行增、删、改、查操作。

V全拼为View,用于封装结果,生成页面展示的html内容。

C全拼为Controller,用于接收请求,处理业务逻辑,与Model和View交互,返回结果。MVC和MVT框架对比_第1张图片

 MVT框架——Django的框架

M全拼为Model,与MVC中的M功能相同,负责和数据库交互,进行数据处理

V全拼为View,与MVC中的C功能相同,接收请求,进行业务处理,返回应答

T全拼为Template,与MVC中的V功能相同,负责封装构造要返回的html

MVC和MVT框架对比_第2张图片

 ***视图View:接受请求,逻辑处理,调用数据,输出相应

  配置url:在自己的应用中配置正则url(正则表达式,视图名称)

***模板Template:定义显示的样子

  加载:读取文件的内容到内存

  渲染:填坑

***模型Model:负责与数据库交互

  面型对象:模型对象,列表

  定义模型类:指定属性及类型,已确定表结构,迁移

  后台管理:创建管理员,启动服务器,admin,注册admin.py

具体步骤

a,步骤1客户端请求信息交给视图函数处理

b,步骤2需要数据的时候调用模型Model,通过步骤3去数据库拿数据,然后通过步骤4返回给模型Model,再通过步骤5返回给视图

注:模型Model中不编写任何sql语句

      在关系数据库中的一行,相当于模型Model中的一个对象

      在关系数据库中的一个表,相当于一个对象的集合。在python中用列表定义关系数据库中的一个表,我们直接在对象中写列表的操作就可以了,ORM会转换成sql语句。之后我们得到一个列表对象返回给视图View

c,  视图View会进行一些处理,比如登陆:需要在数据库中查询密码,查完之后返还给视图做判断处理,处理的结果需要用模板Templates呈现(渲染HTML和CSS执行JS),然后返回客户端

详细的说:

1.定义model类;

2.生成偏移(生成偏移做一次就可以,目的是生成表);

3.编写视图,为了视图函数能被调用还需要配置urlurl即用户请求的网址,url与网址匹配上,视图就会被调用);

4.视图被调用时,就可用模型来获取数据;

5.在模板中定义HTML,以呈现数据;

6.在视图中加载模板并把上下文context传递过去。完成解析(渲染函数render()函数),得到最终的HTML

7.最终的HTML通过view的返回值(一个response),浏览器接收response,并将它呈现出来。

 

你可能感兴趣的:(Django,设计模式)