@font-face { font-family: "Times New Roman"; }@font-face { font-family: "宋体"; }@font-face { font-family: "Calibri"; }p.MsoNormal { margin: 0pt 0pt 0.0001pt; text-align: justify; font-family: Calibri; font-size: 10.5pt; }h3 { margin-top: 5pt; margin-bottom: 5pt; text-align: left; font-family: 宋体; font-weight: bold; font-size: 13.5pt; }p.p { margin: 5pt 0pt; text-align: left; font-family: "Times New Roman"; font-size: 12pt; }span.msoIns { text-decoration: underline; color: blue; }span.msoDel { text-decoration: line-through; color: red; }div.Section0 { }

  MVC架构是设计人员在大部分框架后者大型程序项目中都很喜欢的软件工程架构模式(我喜欢) ,他把一个完整的程序或者网站项目分成三个主要的组成部分,分别是Model模型,View视图,Controller控制器。希望一个项目可以让内部数据的储存方式,外部的可见部分以及过程控制逻辑相互配合运行,进一步简化项目复杂度,提高可扩充性,维护性,有助于不同成员之间的分工。

  MVC架构将软件项目分为Model,View,Controller三部分,这样的分类指的是大部分的传统软件,对于网站而言,网页服务器在接收到远程浏览器的请求的时候,不同的网址做出不同的响应,有不同的链接方式其实就隐含了逻辑控制,因此很难严谨的将其定义为上述三个部分,因此Django另外设计了MTV结构(Model,Template,View)。

上面两个分别是MVC和MTV的图,应该不需要解释。图片诠释的很完美。

Model简介

  model是Django表示数据的模式,以Python的类为基础在models.py中设置数据项与数据格式,基本上是一个类对应一个数据库中的数据表。因此定义数据项的时候,除了数据项名称之外,也要定义此项目的格式以及这样表格和其他表格相互之间的关系(即:数据关联)定义完毕之后,网站的其他程序就可以使用Python语句来操作这些数据内容,不用关心使用的SQL指令以及使用的是那一种数据库。

  在创建完数据表之后,进入后台是发现不了该表的操作方式的,因为需要在该app的admin.py下注册该数据表。

MVC和MTV结构分析的更多相关文章

  1. Python自动化运维之26、Web框架本质、MVC与MTV

    一.Web框架本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. #!/usr/bin/env python #coding:ut ...

  2. 自定义mvc或mtv框架:基于wsgiref的web框架

    把mvc或mtv框架的model数据库,view:html,control逻辑处理,url判别,wsgiref集中在一个文件 代码如下 #!/usr/bin/env python #-*- codin ...

  3. web 框架的本质及自定义web框架 模板渲染jinja2 mvc 和 mtv框架 Django框架的下载安装 基于Django实现的一个简单示例

    Django基础一之web框架的本质 本节目录 一 web框架的本质及自定义web框架 二 模板渲染JinJa2 三 MVC和MTV框架 四 Django的下载安装 五 基于Django实现的一个简单 ...

  4. 浅谈 MVC 和 MTV

    浅谈 MVC 和 MTV 一.MVC M:model,模型,就是数据模型,负责数据的存取: V:view,视图,负责页面的展示逻辑: C:controller,控制器,负责业务逻辑的处理: 二.MTV ...

  5. Django---定义、MVC和MTV模式、命令行工具、配置文件settings

    1.什么是web框架 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的舞台来做表演. 对于所有的 ...

  6. Django MVC与MTV概念 Ajax、分页实现

     MVC与MTV概念 MTV与MVC(了解)        MTV模型(django):            M:模型层(models.py)            T:templates      ...

  7. day56——http协议、MVC和MTV框架模式、django下载安装、url路由分发

    day56 昨日复习 今日内容 HTTP协议 网页:https://www.cnblogs.com/clschao/articles/9230431.html 老师整理的重点 老师整理的重点 请求信息 ...

  8. MVC与MTV模型

    MVC与MTV模型 MVC Web服务器开发领域里著名的MVC模式,所谓MVC就是把Web应用分为模型(M),控制器(C)和视图(V)三层,他们之间以一种插件式的.松耦合的方式连接在一起,模型负责业务 ...

  9. 模板、中间件以及MVC与MTV

    模板 基本数据类型的渲染 {#基础数据类型的渲染#} {#1. 变量#} {{ name }} {#2. 列表#} {#通过点索引可以取值#} {{ list.0 }} {#for循环取值#} {% ...

随机推荐

  1. Nova虚拟机迁移

    这里根据我的配置环境只讲述冷迁移(Migrate Instance)需要进行的计算节点配置而不包含热迁移(Live Migrate Instance),后者需要共享存储及Hypervisor的支持. ...

  2. 笔记整理--LibCurl开发

    LibCurl开发_未了的雨_百度空间 - Google Chrome (2013/7/26 21:11:15) LibCurl开发 一:LibCurl 编程流程1.调用curl_global_ini ...

  3. 如何删除ini文件中的内容

    1.删除子项值:::WritePrivateProfileString(分区名称, 子项名称, "", ini文件路径); 2.删除子项(名称和值):::WritePrivateP ...

  4. org.gradle.api.publication.maven.internal.DefaultMavenFactory错误

    Error:Unable to load class 'org.gradle.api.publication.maven.internal.DefaultMavenFactory'. Possible ...

  5. MySQL的简单优化

    一.如何发现需要优化的SQL 主要使用MySQL的慢查日志对有效率问题的SQL进行监控 第一步:启动慢查日志的监控 打开开关,将未使用索引的查询记录到慢查日志中 设置查询时间,当查询时间大于这个值,就 ...

  6. 使用std::mutex取代QMutex

    为了保证对某个资源的操作是原子性的(对资源读写时,只有当前的操作结束,才允许另外线程对其操作,这里有个理解误区,资源操作原子性不是说,当前某个线程获得了某个资源使用权,然后线程执行时间完毕,要切换线程 ...

  7. gson如何转化json数组

    String.JsonObject.JavaBean 互相转换 User user = new Gson().fromJson(jsonObject, User.class); User user = ...

  8. POJ 3279 Dungeon Master

    Dungeon Master Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 21242   Accepted: 8265 D ...

  9. POJ2976 Dropping tests —— 01分数规划 二分法

    题目链接:http://poj.org/problem?id=2976 Dropping tests Time Limit: 1000MS   Memory Limit: 65536K Total S ...

  10. 网站建设中用JS判断时间并显示不同内容

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...