Django类试图

1. 为什么要学类视图

函数视图,类视图?

一个功能中,如果有多个操作,想放到一个视图函数中,可以通过请求方式来区分。 问题:代码可读性比较糟。

Django提供了类视图来解决这个问题。

视图函数 --- 函数视图

类视图


2. 什么是类视图

类视图: 一个类作为一个视图。

  from django.views.generic import View

  class RegisterView(View):
    """类视图:处理注册"""

    def get(self, request):
      """处理GET请求,返回注册页面"""
      return render(request, 'register.html')

    def post(self, request):
      """处理POST请求,实现注册逻辑"""
      return HttpResponse('这里实现注册逻辑')


3. 如何使用类视图

1. 定义一个类,继承generic.View
2. 重写post或者get方法
  class Demoview(View):
    # GET请求
    def get(self,request):

      return HttpResponse("getPage")

    # Post请求
    def post(self,request):
      return HttpResponse("postPage")

3. 注册路由
#url第二个参数,函数引用 (as_view: 将类视图转换为函数视图)
url(r'^demoview/', views.Demoview.as_view()),

视图函数
类视图、函数视图

posted @ 2019-11-12 18:54  阿磊小哥哥呀  阅读(70)  评论(0)    收藏  举报