MVC框架

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写

模型 - 视图 - 控制器是一种通常用于开发用户界面的体系结构模式,用于将应用程序划分为三个互连的部分。这样做是为了将信息的内部表示与信息呈现给用户和从用户接受的方式分开。 MVC设计模式将这些主要组件分离,从而实现高效的代码重用和并行开发。

  • Model 是用来处理数据逻辑的部分,通常负责在数据库中存取数据。
  • View 是处理数据显示的部分,即我们所看到的html前端网页。
  • Controller 是用来处理用户交互的部分,即根据用户输入的url,映射相应的函数,调用model处理数据等的业务逻辑处理。

MVC的优点有耦合性低,重用性高,生命周期成本低,部署快,可维护性高,有利软件工程化管理等。

Django的MTV框架

Django的MTV框架本质上与MVC是相同的,只是定义方面有些不同。

  • M代表Model(模型),负责向数据库中存取数据,对应MVC中的model
  • T代表Template(模板),负责将html页面展示给用户,对应MVC中的view。
  • V代表View(视图),负责业务逻辑处理,会调用Model和Template。

既然Django的MTV框架和MVC本质上是相同的,那么MVC中的C对应的是什么呢?
对于Django来说,它还带有一个url分发器,用来根据用户输入的不同url,来调用不同的view函数。url分发器和View组合对应着MVC中的Controller

Django项目创建

安装Django

在cmd中执行pip3 install django进行安装

创建Django项目

在cmd中执行django-admin startproject mysite
此时会创建mysite文件夹,进入会有manage.py与mysite文件

mysite下有

创建app

在manage.py同级目录执行python manage.py startapp blog
会生成blog文件夹,内有

启动Django

执行python manage.py runserver 8000

此时登录浏览器,在地址栏输入127.0.0.1:8000即可访问你的网站。

Django之MVC与MTV的更多相关文章

  1. Django之MVC和MTV

    一. MVC MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式: Model(模型)表示应用程序核心(比如数据库记录列表). ...

  2. 理解django框架中的MTV与MVC模式

    1.Models:一个抽象层,用来构建和操作你的web应用中的数据,模型是你的数据的唯一的.权威的信息源.它包含你所储存数据的必要字段和行为.通常,每个模型对应数据库中唯一的一张表. from dja ...

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

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

  4. Django WSGI,MVC,MTV,中间件部分,Form初识

    一.什么是WSGI? WEB框架的本质是一个socket服务端接收用户请求,加工数据返回给客户端(Django),但是Django没有自带socket需要使用 别人的 socket配合Django才能 ...

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

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

  6. Django简介(MVC、MTV)

    Django简介 MVC Model(模型)- 应用程序中处理数据逻辑部分且与数据库交互,用于存取数据的部分 View(视图)- 用于处理后的数据界面展示,且视图通常是由模型数据创建的,是用户看到并与 ...

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

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

  8. MVC与MTV模型及Django请求的生命周期

    MVC模型 MVC:Model View Controller M: 模型.是应用程序中用于处理应用程序数据逻辑的部分 V:视图.是应用程序汇总处理数据显示的部分 C:控制器.是应用程序中处理用户交互 ...

  9. django模块导入/函数/中间件/MVC和MTV/CSRF

    目录 一:模块导入 二:函数 三:中间件 四:MVC和MTV 五:csrf 一:模块导入 第一种:继承 这里的母版更像是一个架子,子板都是定义的内容(如果多个页面中 ,存在相同的页面:这样我们可以抽到 ...

随机推荐

  1. mysql 查找在另一张表不存在的数据

    有两个表Phone_book, Call: Phone_book +----+------+--------------+ | id | name | phone_number | +----+--- ...

  2. LNP环境下Nginx与PHP配合解析的原理

    正在理解中,查阅资料,加上自我理解,得出如下结论,如有错误,欢迎指正.... LNP环境,Nginx与PHP配合运行的原理解释: 以前的互联网时代我们成为web1.0时代,那时用户是被动接受网络信息, ...

  3. Tomcat学习总结(6)——Tomca常用配置详解

    注:Tomcat 8需要JRE7以上的JRE 1. Tomcat环境变量设置 1.1 Java环境变量设置 右键计算机—属性—高级系统设置—环境变量,在”系统环境变量”,设置如下三个变量(如果变量已有 ...

  4. SQL-结构化查询语言(2)

    使用explain查询select查询语句的执行计划 mysql> explain select * from student where Sname='金克斯'\G ************* ...

  5. 扒一扒HTTPS网站的内幕

    215年6月,维基媒体基金会发布公告,旗下所有网站将默认开启HTTPS,这些网站中最为人所知的当然是全球最大的在线百科-维基百科.而更早时候的3月,百度已经发布公告,百度全站默认开启HTTPS.淘宝也 ...

  6. 测试本地node包

    @subject: 测试本地node包 @author: leinov @date: 2018-10-25 当我们编写一个node包,在发布到npm上之前,需要在本地测试该包.假设我们有一个已经编写好 ...

  7. c# 跨域api

    前端 ajax get请求 $.ajax({ url: "API地址", type: 'get', dataType: 'jsonp', async: true, processD ...

  8. [MongoDB] mongodb与php

    windows上安装mongodb的php扩展 下载地址https://s3.amazonaws.com/drivers.mongodb.org/php/index.html 找到对应的php版本的d ...

  9. Java ArrayList 数组之间相互转换

    做研发的朋友都知道,在项目开发中经常会碰到list与数组类型之间的相互转换,本文通过一个简单的例子给大家讲解具有转换过程. package test.test1; import java.util.A ...

  10. REST风格的应用程序实现

    莫笑我老土,因为我确实是最近才听说REST风格的,以前就是觉得 /category/product/pid 这样的地址非常的漂亮,但是那只是表象罢了,了解深入以后,发现必须有一个客户端的Ajax En ...