码迷,mamicode.com
首页 > 其他好文 > 详细

【Django】FBV模式和CBV模式

时间:2018-12-04 14:46:33      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:pre   url   django   imp   提交   self   请求   import   执行   

FBV(Function Base Views):一个url对应一个视图函数

CBV(Class Base views):一个url对应一个类


urls:

urlpatterns = [
    url(r‘^fbv/‘,views.fbv),
    url(r‘^cbv/‘,views.CBV.as_view()),
]

views:

from django.views import View

class CBV(View):
    def get(self,request):
        ...

    def post(self,request):
        ...
    
    
def fbv(request):
    ...

在FBV的模式下:url匹配成功之后,会直接执行对应的视图函数

在CBV模式下:url匹配成功之后,会找到视图函数中对应的类,然后这个类回到请求头中找到对应的Request Method

  • 如果是客户端以POST的方式提交请求,就执行类中的post方法
  • 如果是客户端以GET的方式提交请求,就执行类中的get方法

【Django】FBV模式和CBV模式

标签:pre   url   django   imp   提交   self   请求   import   执行   

原文地址:https://www.cnblogs.com/q1ang/p/10063451.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!