django2.3怎麼匯入login包

lee_lgw發表於2021-09-11

django2.3怎麼匯入login包

在學習註冊使用者的過程中,檢視中下面的程式碼

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:
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"),
]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1020/viewspace-2836858/,如需轉載,請註明出處,否則將追究法律責任。

相關文章