MVC模式和Django中的MVT模式

MVC模式:是一种程序设计模式,其核心思想是分工、解耦,让不同的代码块之间降低耦合,增强代码的可扩展性和可移植性,实现向后兼容。

MVC:Model-View-Control

M:主要封装对数据库层的访问,对数据库中的数据进行增删查改的操作。

V:用于封装结果,生成页面展示的html内容。

C:用于接收请求,处理业务逻辑,与Model和View交互,返回结果。

MVC模式8步走:

1.客户端(浏览器、Ajax、app、爬虫程序)发送请求到服务器

2.服务器control(接收请求,业务处理,返回结果)将请求发送到Model(用于和数据库交互)

3.Model将处理数据方式发送到数据库

4.数据库将处理好的数据发给Model

5.Model将处理好的数据发给Control

6.Conreol将数据整理好发送给View

7.View封装好html、CSS、JS发给Control

8.Control将封装好的发送给客户端。客户端接收到结果渲染html和CSS,并执行js

Django中的MVT:

  • M全拼为Model,与MVC中的M功能相同,负责和数据库交互,进行数据处理。
  • V全拼为View,与MVC中的C功能相同,接收请求,进行业务处理,返回应答。
  • T全拼为Template,与MVC中的V功能相同,负责封装构造要返回的html。

原文地址:https://www.cnblogs.com/hjl666/p/10546621.html

时间: 2024-08-27 20:23:06

MVC模式和Django中的MVT模式的相关文章

web开发中的MVC框架与django框架的MTV模式

有一种程序设计模式叫MVC,核心思想:分层,解耦,分离了 数据处理 和 界面显示 的代码,使得一方代码修改了不会影响到另外一方,提高了程序的可扩展性和可维护性. MVC的全拼为Model-View-Controller,最早由TrygveReenskaug在1978年提出,是施乐帕罗奥多研究中心(Xerox PARC)在20世纪80年代为程序语言Smalltalk发明的一种软件设计模式,是为了将传统的输入(input).处理(processing).输出(output)任务运用到图形化用户交互模

40.django中重要概念

模板引擎 1.基本数据类型 字符串.整数.小数 列表 字典 列表套字典 2.母版 母版页面(layout.html) {% block mycontent%} {% endblock %} {% block mycss%} {% endblock %} {% block myjs%} {% endblock %} 子版页面 {%extends "layout.html"%} 继承母版 {% block mycontent%} 子版自己的内容 {% endblock %} 3.导入模块方

Django中的模式(mvc)

最近准备用Python做做网站,框架选了django,第一次接触web框架,感觉很陌生,model view什么的很奇怪,不过了解了mvc这个模式之后好了很多,今天记录下web中长见的几种模式. 以下内容转自:http://blog.csdn.net/hudan2714/article/details/50990359 MVC MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数

android中MVC,MVP和MVVM三种模式详解析

我们都知道,Android本身就采用了MVC模式,model层数据源层我们就不说了,至于view层即通过xml来体现,而 controller层的角色一般是由activity来担当的.虽然我们项目用到了MVP模式,但是现在人们并没有总结出一种规范,所以MVP模式的写法并不统一,而至于MVVM模式看网上的呼声似乎也是赞同和拍砖的参半,所以对于这几种模式我也不发表意见了,适合自己的才是最好的.下面是我看到的关于这几种模式的几篇文章,整合了一下分享给大家. ----------------------

架构和模式的区别:三层架构和MVC在应用开发中的位置

架构是系统层面的,可以是多层架构,也可以是事件驱动架构,也可以是微服务架构. 模式是GUI应用的一种职责分离设计. 三层架构(包含多层架构)和 MVC模式(包含MVP, MVVM) 没什么关系,它们不在同一个维度上. 三层架构是从整个应用程序架构的角度来分为DAL(数据访问层).BLL(业务逻辑层).WEB层(界面层)各司其职,意在职责分离:三层是为了解决整个应用程序中各个业务操作过程中不同阶段的代码封装的问题,为了使程序员更加专注的处理某阶段的业务逻辑:并且三层只是多层架构中的一种情况,完全可

Django中请求的生命周期 和 FBV模式和CBV模式

Django的生命周期就是你的 一个请求所发生的整个流程 Django的生命周期内到底发生了什么呢?? 1. 当用户在浏览器中输入url时,浏览器会生成请求头和请求体发给服务端 请求头和请求体中会包含浏览器的动作(action),这个动作通常为get或者post,体现在url之中. 2. url经过Django中的wsgi,再经过Django的中间件,最后url到过路由映射表,在路由中一条一条进行匹配, 一旦其中一条匹配成功就执行对应的视图函数,后面的路由就不再继续匹配了. 3. 视图函数根据客

MVC中的Repository模式

1.首先创建一个空的MVC3应用程序,命名为MyRepository.Web,解决方案命名为MyRepository. 2.添加一个类库项目,命名为MyRepository.DAL,添加一个文件夹命名为Repository来存放业务逻辑. 3.继续添加一个类库项目,命名为MyRepository.Domain,添加两个文件夹Models和Infrastructure. Models来存放实体,Infrastructure来存放几个基本的类.现在目录结构已经搭建好了. 4.用NuGet确保三个项目

Django--MVC与MVT模式

Django里面有两种模式,分别是mvc和mvt模式 mvc和mvt模式的区别之一: 解耦,让不同的代码块之间降低耦合,增强代码的可扩展和可移植性,实现向后兼容. MVC模式: MVC:model-view-controller分别是模型-视图-控制器 •m:model层,负责处理数据,包块对数据的增删改查 •v:view层,显示model层的数据,界面处理 •c:逻辑处理 MVC模式是一种软件框架模式,思想:分层,解耦. mvc分离了数据处理和界面显示的代码,使得程序在不被修改数据相关逻辑的前

制作类似ThinkPHP框架中的PATHINFO模式功能(二)

距离上一次发布的<制作类似ThinkPHP框架中的PATHINFO模式功能>(文章地址:http://www.cnblogs.com/phpstudy2015-6/p/6242700.html)已经过去好多天了,今晚就将剩下的一些东西扫尾吧. 上一篇文章已经实现了PATHINFO模式的URL,即我们访问MVC模式搭建的站点时,只需要在域名后面加上(/module/controller/action)即可,很智能化.并且通过new Object时的自动触发函数实现类文件的自动载入,因此只要我们搭