Django之WSGI 和MVC/MTV

WEB框架的本质:socket 接受请求 + 内容处理+ socket响应。

但是Django没有自带socket需要 使用 别的socket+Django

socket有很多如下

但是它们必须遵循一个规范 WSGI(web服务网关接口)

Django默认使用 wgiref socket(并发性能低 测试使用)

uwsgi+Django 工作中

wsgiref +Django工作流程

1.socket 接受客户端请求 做http请求解析(分割请求头请求体)

2.wsgiref 把解析之后请求相关信息转发 给 Django

3.Django执行处理,return产出字符串,回传给WSGI

4.把socket send (Django产出的字符串),返回客户端

Wsgi+Django
            from wsgiref.simple_server import make_server

            def RunServer(environ, start_response):

                Django框架开始
                中间件
                路由系统
                视图函数
                。。。。。

                start_response(‘200 OK‘, [(‘Content-Type‘, ‘text/html‘)])

                return [bytes(‘<h1>Hello, web!</h1>‘, encoding=‘utf-8‘), ]

            if __name__ == ‘__main__‘:
                httpd = make_server(‘127.0.0.1‘, 8000, RunServer)
                httpd.serve_forever()

MVC/MTV

是不有人经常在你面前 装B的提起 MVC 和MTV?

说白了就是做功能模块的划分,把不同的代码放到不同的文件。

MVC

models(数据库,模型)

views(html模板)

controllers(业务逻辑处理) --> MVC

MTV

models(数据库,模型)

templates(html模板)

views(业务逻辑处理) --> MTV (Django属于 MTV)

时间: 2024-11-09 20:22:41

Django之WSGI 和MVC/MTV的相关文章

浅谈MVC&amp;MTV设计模式

在目前基于Python语言的几十个Web开发框架中,几乎所有的全栈框架都强制或引导开发者使用MVC设计模式.所谓全栈框架,是指除了封装网络和线程操作,还提供HTTP.数据库读写管理.HTML模板引擎等一系列功能的Web框架,比如Django.Tornado和Flask. MVC设计模式: 最早由Trygve Teenskaug在1978年提出,上世纪80年代是程序语言Smalltalk的一种内部架构.后来MVC被其他领域借鉴,成为了软件工程中的一种软件架构模式. MVC把Web框架分为3个基础部

python框架Django与WSGI

今天学习了一下用简单的Django框架与简单的WSGI服务器配套运行一个简单的Django项目: Django不是完整的web后端框架,它需要和一个WSGI服务器配套,由WSGI服务器负责网络通讯部分. 1.Django与WSGI WSGI全称:Web Server Gateway Interface,是Python定义的WSGI程序和WSGI服务器之间的一种接口 现一个WSGI应用,只需要满足3个要求: 是可调用的,比如是一个函数,或者是一个可调用类(具有__call__方法)的实例 WSGI

[oldboy-django][2深入django]MVC&amp;MTV

# MVC和MTV MVC = models(数据库) + views(模板html) + controllers(业务逻辑处理) MTV = models(数据库) + template(模板html) + views(业务逻辑) django属于MTV

Linux+Django+Python+Wsgi配置过程

Linux下配置Apache+Mod_Wsgi+Django环境 (ybw 2011-09-23) 一.安装环境 操作系统:CentOS release 5.5 内核版本:Linux Svn-168-1-11 2.6.18-194.el5 #1 SMP Fri Apr 2 14:58:14 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux Python版本:Python 2.4.3 Apche版本:httpd-2.2.3 Mod_Wsgi版本:mod_wsgi-3.

Django之WSGI浅谈

一.什么是Web框架 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统. 浏览器与服务器之间发起HTTP请求: 1.浏览器发送一个HTTP请求: 2.服务器收到请求,生成一个HTML文档: 3.服务器把HTML文档作为HTTP响应的Body发送给浏览器: 4.浏览器收到HTTP响应,从HTTP Body取出HTML文档并显示. 对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客

Django模拟ASP.NET MVC 自动匹配路由(转载)

项目结构 操作步骤 1.创建项目结构如上图 2.在myapp目录下创建urls文件,代码: 1 from django.conf.urls import patterns, url 2 3 from untitled1.myapp.dispatcher import start 4 5 urlpatterns = patterns('', 6 url(r'^(?P<controller>\w+)?/(?P<action>\w+)?/(?P<parameter>.+)?$

web框架以及MVC、MTV

h3 { background-color: palegreen } 本篇内容概要 ----原始web框架 ----自定义web框架 ----mvc和mtv 一.web框架的本质 对于所有的web应用,本质上其实就是一个socket服务端,用户的浏览器就是一个socket客户端 简单的说就是,socket传入数据,之后后面是业务逻辑处理程序 画得不好,理解就好 二.引入WSGI 由于web框架包括两部分 1.socket 2.逻辑处理 有些框架只有逻辑处理,没有socket,如flask.bot

python MVC、MTV 框架介绍 Django 模板系统常用语法

Django 框架简介一.MVC框架和MTV框架1.MVC 全名Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分.优势: 耦合性低 重用性高 生命周期成本低结构:模型(Model) 与数据库相关 存取数据视图(View) 处理业务逻辑 展示信息控制器(Controller) 获取用户信息 给模型传递指令2.Django的MTV 全名Model Template View 借鉴了MVC框架的思想,也是分成三部分,来降低各个部分之间的耦合性.结构

Django基础之MTV模型

一.Django基础 一.Django简介 Django是一个开放源代码的Web应用框架,由Python写成.采用了MVC的软件设计模式,即模型(Model).视图(View)和控制器(Controller).它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件.并于2005年7月在BSD许可证下发布.这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的. 1.mvc简介 http://blog.csdn.net/pi9n