Django简介
一个开源的Web应用框架,由python写成
采用MVT的软件设计模式,即模型(Model),视图(View)和模板(Template)
基于MCV模型建立(。。+控制器(Controller))
Model:编写程序应有的功能,负责业务对象与数据库的映射(ORM)
View:负责业务逻辑,并在适当调用Model和Template.
Template:负责如何将页面(html)展示给用户
除以上三个东西外,还有一个URL分发器,负责将一个个URL的页面请求发给不同的View处理,View再调用乡音
安装注意:框架的版本和python的版本对应
MVC与MVT模型对比
MVC优势 | MVT优势 |
---|---|
低耦合 | 有 |
开发快捷 | 有 |
部署方便 | 有 |
可重用性高 | 有 |
维护成本低 | 有 |
- | 强大的数据库功能(Django) |
- | 自带强大的后台功能(Django) |
- | 优雅的网站(Django) |
MVC(Model-view-controller)
用户操作流程:
Model:编写程序应有的功能,负责业务对象与数据库的映射(ORM)
View:图像界面,负责与用户的交互(页面)
Controller:负责转发请求,对请求进行处理
MTV模型(Model-Template-View)
用户操作流程:
Model:编写程序应有的功能,负责业务对象与数据库的映射(ORM)
Template:负责如何把页面(HTML)展示给用户
View:负责业务逻辑,并在适当时间调用Model和Template
除以上三层外,还需要一个URL分发器,将一个个URL的页面请求分发给不同的View来处理,View再调用相应的Model和Template。
流程:用户通过浏览器向服务器发起一个请求(request),这个请求会去访问视图函数:
1、如果不涉及到数据调用,那么这个时候视图函数直接返回一个模板(网页)给用户;
2、如果涉及到数据调用,那么视图函数调用模型,模型去数据库查找数据,然后逐级返回,视图函数将返回的数据填充到模板中空格中,最后返回网页给用户。