FBV和CBV
Django中~咱们知道有CBV以及FBV编程
什么是FBV和CBV呢~~restful
FBV 基于函数的视图函数
CBV 基于类的视图post
也就是说咱们是用函数编写视图~仍是类编写视图~~咱们来看下两个的简单实现~~url
urlpatterns = [ path('admin/', admin.site.urls), path('test_fbv', test_fbv), path('test_cbv', TestCBV.as_view()) ]
def test_fbv(request): return HttpResponse("ok")
class TestCBV(View): def get(self, request): return HttpResponse("ok")
咱们能够看到,咱们的CBV首先执行了as_view()方法,那咱们看下咱们这个方法里作了什么~spa
咱们能够看出~CBV在内部作了一个分发~本质和FBV是同样的~~rest
之后作接口开发的时候,咱们就要用CBV,咱们以前学了restful规范,如今就很容易理解咱们为何用CBV了。code
面向资源编程,而且用HTTP的请求方式来对资源进行操做,还要遵循这些方法的语义,因此咱们选择CBV编写咱们接下来的视图函数。blog