关于TypeError:cannot import name ‘login’问题解决
python 3.6 Django 2.1
原文
“”" 为应用程序 users 定义 URL 模式 “”"
from django.conf.urls import url
from django.contrib.auth.views import login
from . import views
urlpatterns = [
#登录页面
url(r’^login/$’, login, {‘template_name’: ‘users/login.html’},
name=‘login’),
]
修改后
“”“为应用程序users定义URL模式”""
from django.contrib.auth.views import LoginView
from django.urls import path
from .import views
app_name=‘users’
urlpatterns =[
#登录页面
path(‘login/’,LoginView.as_view(template_name=‘users/login.html’),name=“login”),
]
在2.1版本,基于登录的、注销等基于功能的视图已被重新使用之前版本URL:longin在2.1变为LoginView
All authentication views
This is a list with all the views django.contrib.auth provides. For implementation details see Using the views.
class LoginView
URL name: login
See the URL documentation for details on using named URL patterns.
附带Django2.1官方文档地址