MVC和MVT
MVC框架 ——一种常用的设计框架
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,它强制性的使应用程序的输入、处理和输出分开。
M全拼为Model,主要封装对数据库层的访问,对数据库中的数据进行增、删、改、查操作。
V全拼为View,用于封装结果,生成页面展示的html内容。
C全拼为Controller,用于接收请求,处理业务逻辑,与Model和View交互,返回结果。
MVT框架——Django的框架
M全拼为Model,与MVC中的M功能相同,负责和数据库交互,进行数据处理。
V全拼为View,与MVC中的C功能相同,接收请求,进行业务处理,返回应答。
T全拼为Template,与MVC中的V功能相同,负责封装构造要返回的html。
***视图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.编写视图,为了视图函数能被调用还需要配置url(url即用户请求的网址,url与网址匹配上,视图就会被调用);
4.视图被调用时,就可用模型来获取数据;
5.在模板中定义HTML,以呈现数据;
6.在视图中加载模板并把上下文context传递过去。完成解析(渲染函数render()函数),得到最终的HTML;
7.最终的HTML通过view的返回值(一个response),浏览器接收response,并将它呈现出来。