zoukankan      html  css  js  c++  java
  • Django类方式写view

    问题:

      Django官方教程中都是通过def函数方式来写view,如何通过类方式写view以及为何要通过类方式写view?

    那,如何解决这个问题?

    1. 用户访问浏览器,一般两种方式,get获取网页和post提交数据,get也可以提交数据,以一种明文形式显示在url中,post提交的数据url中不显示,一种安全的数据提交方式,get方式提交数据一般应用于一些排序方式和类别过滤中,post用于用户提交的表单数据,比较隐私的数据,get方式提交数据为小数据信息,而post方式提交数据可以是大数据信息
    2. 导入View基类
    3. 写一个view类,继承View基类,下面有两个方法,get和post方法
    4. 在urls中通过类方法.as_view() 方式 调用这个view类
    5.  通过前端提交数据的方式,采用不同的方法,实现url复用,也就是或get和post共用一个url,如果函数方式写view需要写判断提交方式逻辑,还有类实现了很好的封装,而函数没有,很容易被其他函数影响
    __author__ = 'beimenchuixue'
    __blog__ = 'http://www.cnblogs.com/2bjiujiu/'
    
    # 导入View基类
    from django.views.generic.base import View
    # 导入模版渲染函数
    from django.shortcuts import render
    
    
    # 这个是用户登录的验证类
    class LoginView(View):
        """登录验证"""
        # get方式获login页面
        def get(self, request):
            
            return render(request, 'login.html', {})
        
        # 用户提交表单,返回主页
        def post(self, request):
            """提交表单"""
            return render(request, 'index.html', {})
    

      urls中,导入LoginView,调用.as_view方法

    url(r'^login/$', LoginView.as_view(), name='login')
    

      

  • 相关阅读:
    2017暑期集训Day 4
    2017暑期集训Day 5
    2017暑期集训Day 3
    Codeforces Round #433
    校内集训(20170906)
    校内集训(20170903)
    培训补坑(day10:双指针扫描+矩阵快速幂)
    培训补坑(day8:树上倍增+树链剖分)
    培训补坑(day7:线段树的区间修改与运用)(day6是测试,测试题解以后补坑QAQ)
    培训补坑(day5:最小生成树+负环判断+差分约束)
  • 原文地址:https://www.cnblogs.com/2bjiujiu/p/7453054.html
Copyright © 2011-2022 走看看