温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python开发笔记

发布时间:2020-04-20 00:08:43 来源:网络 阅读:541 作者:aaron428 栏目:大数据

1、django基类View的as_view方法

# 导入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')

当类视图调用as_view方法时,会把请求时的request方法自动对应到相应的类方法上,比如request的get方法对应到类视图的get方法。
as_view仅仅能自动对应get和post(具体的request方法在类属性当中有个列表:http_method_names = ['get', 'post', 'put', 'patch', 'delete', 'head', 'options', 'trace'])等方法,如果我在类视图定义了自己的方法,那as_view并不能把我自定义的方法对应起来。
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI