django中CBV

Posted pythonywy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django中CBV相关的知识,希望对你有一定的参考价值。

08.13自我总结

django中CBV

一.django处理业务逻辑的两种方式

  • FBV (function based views):使用函数来处理业务逻辑
  • CBV (class based views):使用类来处理业务逻辑

二.CBV

urls.py

url(r'^login/', views.Login.as_view()), #类名.as_view()

views.py:

from django.views import View
class Login(View):
    def get(self, request):    #方法里必须有request来接受传过来的值不然会报错
        return render(request, "login.html") 

    def post(self, request):
        pass

当请求过来的时候, 会优先判断你的请求方法是GET还是POST, 如果是GET请求的话, 走GET函数, 反之, 走POSt函数

继承View类的时候会自动对传过来的参数进行判断

注意:

  • form表单的方式, 只支持GET/POST
  • ajax的方式, 全部支持

以上是关于django中CBV的主要内容,如果未能解决你的问题,请参考以下文章

Django + Angular:如何将 angularjs $http 数据或参数发送到 django 并在 django 中解释?

django-在Django中选择文件后预览照片

在标题 Django 管理工具中隐藏 Django 徽标/名称

models.py中增加了字段,django中怎样更新

django 3和django通道中的SynchronousOnlyOperation错误

[django]在windows下搭建Django的虚拟环境