Django的MTV开发模式指的是什么-,django的mvc模式

  Django的MTV开发模式指的是什么?,django的mvc模式

  Web开发领域还有一个著名的设计模式,——MVC。它和MTV有什么区别?

  1.MVC设计模式。我们先介绍MVC设计模式,它是网页设计模式的经典,MTV模式也是由它衍生而来。

  MVC是Model-View-Controller的缩写,其中每个单词都有自己不同的含义:

  Modle代表数据存储层,是数据表的定义和数据的添加、删除、校验;View表示视图层,是系统的前端显示部分。它负责显示什么以及如何显示。代表控制器控制层,负责根据视图层输入的指令检索模型层的数据,并在该层编写代码生成结果并输出。

  图1:1:MVC设计模式的示意图

  MVC设计模式的请求和响应过程描述如下:

  用户浏览器向服务器发送请求,控制器层收到请求后同时向模型层和视图发送指令;摩尔层根据指令与数据库交互并选择相应的业务数据,然后将数据发送给控制层;视图层收到控制器的指令后,加载用户请求的页面,并将该页面发送给控制器层;控制器层收到模型层和视图层的数据后,将其组织成响应格式发送给浏览器,浏览器解析后显示页面。MVC的三层紧密相连,但又相互独立。每一层的修改都不会影响到其他层,每一层都提供自己独立的接口供其他层调用。MVC的设计模式降低了代码之间的耦合性(即关联性),增加了模块的可重用性,这就是MVC的设计模式。

  2.MTV设计模式那么Django的MTV怎么样呢?下面解释Django的设计模式。

  Django借鉴了经典的MVC模式,也将交互过程分为三个层次,即MTV设计模式;

  模型:数据存储层,处理所有与数据相关的业务,与数据库交互,提供数据的添加、删除和校验;模板:模板层(也称为表示层)专门处理页面的显示;视图:业务逻辑层,处理具体的业务逻辑。它的功能是连接模型层和模板。

  图2:2:Django MTV设计模式示意图

  我们根据MVC设计模式来分析MTV。在MTV设计模式中,视图层取代了控制器层的位置,模板层取代了原视图层的位置。

  不熟悉Django设计模式的人可能会对模板层有疑问。其实Template的英文意思就是“模板”。你可以简单理解为是HTML页面,HTML页面的渲染是在视图层完成的。

  我们还描述了MTV设计模式的请求和响应过程:

  用户浏览器向服务器发送请求。服务器收到请求后,通过视图的业务逻辑层进行分析,并向模型层和模板层发送指令。摩尔层与数据库交互,并将数据返回视图层;模板层收到指令后,调用相应的模板并返回给视图层;视图层在收到模板和数据后,首先渲染模板(即给模板分配相应的数据),然后组织成响应格式返回给浏览器,浏览器解析后最终呈现给用户。通过以上两种设计模式的比较,我们可以得出结论,MTV是MVC的一种细化。把原来MVC中的V层拿出来分离,视图的显示和如何显示交给模板层,而视图层更专注于实现业务逻辑。其实Django里面是有控制器层的,不过是框架自己实现的,我们不用关心。Django更注重M,T,v。

  转载请联系作者授权,否则将追究法律责任。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: