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

Posted askzyl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django中请求的生命周期 和 FBV模式和CBV模式相关的知识,希望对你有一定的参考价值。

Django的生命周期就是你的 一个请求所发生的整个流程

 

Django的生命周期内到底发生了什么呢??

 

1. 当用户在浏览器中输入url时,浏览器会生成请求头和请求体发给服务端
请求头和请求体中会包含浏览器的动作(action),这个动作通常为get或者post,体现在url之中.

2. url经过Django中的wsgi,再经过Django的中间件,最后url到过路由映射表,在路由中一条一条进行匹配,
一旦其中一条匹配成功就执行对应的视图函数,后面的路由就不再继续匹配了.
3. 视图函数根据客户端的请求查询相应的数据.返回给Django,然后Django把客户端想要的数据做为一个字符串返回给客户端.
4. 客户端浏览器接收到返回的数据,经过渲染后显示给用户

 

 

首先: wsgi     -------->中间件----------->路由系统----------->视图函数------------> 模板和orm  --------------->返回给请求者

 

 

wsgi:  是web服务网关接口,一套协议

  django中实现wsgi的模块有: wsgiref  和uwsgi模块

 

 

中间件:

 

 

路由系统就是django中的url

视图函数:就是views

模板是:template中的前端界面

orm   是你的django去操作你的数据库中的内容

 

 

 

 

 

 

 

 

 

技术分享图片

 

 wsgi是一个协议 是http协议

 

 

 

 

 

FBV模式和CBV模式:

 

FBV: 一个url对应一个视图函数

CBV:一个url对应一个类

一个url对应一个视图函数,这个模式叫做FBV(Function Base Views)

除了FBV之处,Django中还有另外一种模式叫做CBV(Class Base views),即一个url对应一个类

 

以上是关于Django中请求的生命周期 和 FBV模式和CBV模式的主要内容,如果未能解决你的问题,请参考以下文章

django-django请求生命周期之FBV和CBV

python---django请求-响应的生命周期(FBV和CBV含义)

django考点

django考点答案

Django请求生命周期和ORM

05.Django-form表单与请求的生命周期