加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Django 用户访问生命周期(面试内容)

发布时间:2020-12-15 17:14:53 所属栏目:大数据 来源:网络整理
导读:请求响应Http ????????1. 发送Http请求 ????????2. 服务器接受后,根据请求头中的url在路由关系表(urls.py)中进行匹配 ????????3. 匹配成功后,执行指定的views函数 ????????????????URL ---- 函数 =======》FBV ????????????????URL?---- 类 ? ?=======》CB

请求响应Http

????????1. 发送Http请求

????????2. 服务器接受后,根据请求头中的url在路由关系表(urls.py)中进行匹配

????????3. 匹配成功后,执行指定的views函数

????????????????URL ----> 函数 =======》FBV

????????????????URL?----> 类 ? ?=======》CBV

????????????????根据函数(FBV)或者类(CBV)进行分发

????????4. 业务处理

  • 根据需求自定

  • 操作数据库

    ? ? ? ?原生SQL

    ? ? ? ?Django ORM

    ==> 返回给用户的结果 <==

  • 响应内容

    ? ? ? ?响应头

    ? ? ? ?响应体

响应头赋值:

def?post(self,?req):
ret?=?HttpResponse('cbv.post')
ret['h1']?=?'v1'
ret['h2']?=?'v4'
ret.set_cookie('c1','v2')
ret.set_cookie('c2','v3')
'''
响应头:
h1=v1
h2=v4
cookies:c1=v2;c2=v3
响应体:
cbv.post
'''


CBV示例代码:

--------------------------views.py-----------------------
class?CBV(View):
????def?dispatch(self,?request,?*args,?**kwargs):
????????res?=?super(CBV,?self).dispatch(request,?**kwargs)
????????return?res
????def?get(self,?req):
????????
????????return?render(req,?'index.html')
????def?post(self,?req):
????????????ret?=?HttpResponse('cbv.post')
????????????ret['h1']?=?'v1'
????????????ret['h2']?=?'v4'
????????????ret.set_cookie('c1','v2')
????????????ret.set_cookie('c2','v3')
????????????'''
????????????响应头:
????????????????h1=v1
????????????????h2=v4
????????????????cookies:c1=v2;c2=v3
????????????响应体:
????????????????cbv.post
????????????'''
????????return?ret
????????????????
--------------------------urls.py------------------------------
url(r'^manage/student/$',?views.CBV.as_view(),?name='student'),---------------------------index.html--------------------------
<body>
????<input?type=text?name='user'>
????<input?type='submit'?value='提交'>
</body>


(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读