MTV和MVC模式,初识模板
1、MTV和MVC模式:分层级进行管理
说到框架模式我们有必要简单的说下设计模式,了解下设计模式这个概念,因为有人对设计模式和框架模式的概念经常混淆
设计模式:
是一套被反复使用,多数人知道并经过分类的代码设计经验总结,是为了解决一些通用性问题的
目的:重用代码并保证代码的可靠性
设计模式分类:单例,抽象工厂 等等 23种模式
一句话总结:解决某一些特殊问题的一种思想和思路
框架模式:
代码重用,框架模式是解决如何设计程序框架的代码,在框架模式中会包含多种设计模式,与设计模式是一种包含关系,
举例来说:比如要盖楼,那怎么盖楼属于框架模式,楼里面的电梯怎么设计,楼梯怎么设计,属于设计模式,所以框架模式在
盖楼中属于如何把楼盖起来,那么他里面会包含多种设计模式,具体的细节碰到不同的东西,会采用不同的设计模式来解决,
因此在一种框架模式中会包含多种设计模式。
目前流行的框架模式:
MVC(适用于多种编程语言,单在python中不常用):
M:Models 模型层,在程序中用于处理数据逻辑的部分,(主要是处理数据),主要负责在数据库中对数据的存取
操作,其实就是对数据库的增删改查的操作
V:Views 视图层 ,在应用程序中处理显示部分的内容(html,jsp)
C: Controllers 控制层 ,处理用户交互的部分,主要作用于M和V之间做协调,通常是负责从模型层中抽取数据,再
进行业务处理,最后将数据传给视图层,并将视图传给客户端
详解:用户首先打开浏览器,输入网址,然后浏览器向服务器发送请求,到了服务器之后,由控制层接收这个请求,接收完请求就知道用
户想要做什么,了解了用户的意图,如果需要用到一些数据,比如想查看某某商品的信息,那么控制器就需要找到商品的信息,所以控制
器就找模型层了,模型层会根据数据库创建模型(注意模型层不是数据库)一般情况数据库有多少张表,那么模型层就有多少个类,每个
表中有多少个字段,模型层中的类就有多少个变(属性),在模型层里还会提供增删改查的操作,那么这个执行结构再反馈给控制器,到
此,控制层和模型层的交互完成了,接下来,控制层就会把接收到的数据发送给视图,视图会把数据显示在网页里,反馈给浏览器,这样
用户就看到了
MTV(django)
M:模型层,功能同上
T:templates:模板层,用于处理用户显示部分的内容,和MVC中的V是一样的,通过html展示
V:views 视图层,在MTV中视图层是处理用户交互的部分,从模型层中获取数据,再将数据交给模板层,再先是给用
户和MVC中的控制层用法一样
详解:用户打开浏览器,浏览器发送请求,视图层接收用户请求,接受完请求调用模型层,模型层根据数据库创建模型,进行增删改查等
操作,模型层处理完数据返回给视图层,视图层接收完数据调用模板层,模板层里存放HTML等页面,模板层会把HTML模板页面返回给视图
层,视图层填充数据到模板上,然后再返回给浏览器
2、Django
创建方式:两种,命令创建和pycharm直接创建
(1)命令创建:
django-admin startproject myset --(myset是项目名字)
(2)直接创建:
启动命令:python manage.py runserver 8080
3、python内置库sqlite
db.sqlite3
sqlite:terminal启动方式
初始化:python manage.py makemigrations
生成数据库:python manage.py migrate
4、模板链接:(模板语言)
user={"username":username,"sex":sex,"email":email}
user_list.append(user)
{% for i in user_list %}
<tr>
<td>{{i.username}}</td>
<td>{{i.sex}}</td>
<td>{{ i.email }}</td>
</tr>
{% endfor %}