MVC
MVC是众所周知的模式:model(模型)、view(视图)、controller(控制器),其核心思想是分工、解耦,让不同的代码块之间降低耦合,增强代码的可扩展性和可移植性,实现向后兼容。用户在页面输入url,转交给url控制器,然后根据url匹配相应的视图函数,viwe会去到models取数据,然后models在数据库中取得数据后返回给视图,视图把要展示的数据返回给模版,然后就输出到页面上。
MVC模块中的各个器件的工作原理:
M: Model,模型, 和数据库进行交互。
V: View,视图, 产生html页面。
C: Controller,控制器, 接收服务请求并进行处理,与M和V进行交互,返回应答。
MTV
MTV,Django也是一个MVC框架,但是在Django中,控制器接受用户输入的部分由框架自行处理,所以django更加关注的是 模型(model)、view(视图)、templates(模版),也就是MTV模型。请求一个url后,匹配相应的view区,view去models(一个托管数据的层级)查找我们要的数据,然后将数据装载到templates层,然后呈献给我们。
MVT模块中的各个器件的工作原理:
M: Model,模型, 和MVC中M功能相同,和数据库进行交互。
T: Template,模板, 和MVC中V功能相同,产生html页面。
V: View,视图, 和MVC中C功能相同,接收服务请求并进行处理,与M和V进行交互,返回应答。