在學習注冊用戶的過程中,視圖中下面的代碼
from django.contrib.auth.views import login
啟動django服務時,報錯:
ImportError: cannot import name 'login' from 'django.contrib.auth.views'
改為
from django.contrib.auth import login
django服務啟動正常,但在點擊login鏈接時又出現如下錯誤
TypeError at /users/login/
login() got an unexpected keyword argument 'template_name'
Request Method: GET
Request URL: http://127.0.0.1:8000/users/login/
Django Version: 2.1.4
Exception Type: TypeError
Exception Value:
login() got an unexpected keyword argument 'template_name'
經過多方查找,解決辦法如下:
from django.contrib.auth.views import LoginView
from . import views
app_name = 'users'
urlpatterns = [
#登錄頁面
#url(r'^login/$', login, {'template_name': 'users/login.html'}, name = 'login'),
url(r'^login/$', LoginView.as_view(template_name='users/login.html'), name="login"),
]
