Django2.1内置登陆视图的使用方法

学习《跟老齐学Python Django实战》一书的内容时,项目使用了Django的用户系统,所以也使用内置的登陆视图函数来实现登陆,作者使用的是Django1.10,内置视图的位置是django.contrib.auth.views.login,这是一个函数,如果使用的Django是版本是1.0的,按照书中的方法使用应该没有任何问题。但是如果使用的是Django2.0呢?

Django2.0的内置登陆视图不再是函数,而是类,位置在django.contrib.auth.views.LoginView。

from django.contrib.auth.views import LoginView

# LoginView.as_view后面要加上()
path('login/', LoginView.as_view(template_name='account/login.html'), name="user_login"),

类视图有个as_view方法,这个方法来自父类,位置在django.views.generic.base.View.as_view。

template_name是类视图中的一个变量,默认值是'registration/login.html',通过向as_view传入参数template_name='account/login.html'可以修改这个变量值。

其他设置跟书中相同。

你可能感兴趣的:(Django2.1内置登陆视图的使用方法)