我剛剛開始使用 django,在各種文獻和過時的教程之間有點迷失。
我想要實作的是創建一個簡單的儀表板應用程式,其中還包含一些后端腳本來集成各種 API,其中大多數是開放 API,如天氣 API、日歷 API 等,僅供學習。
但是我需要為應用程式創建一個登錄頁面,而當前 django 身份驗證模塊的教程有點棘手,因為它從來沒有告訴我如何將登錄表單實作到身份驗證后端。為此,我需要一些更簡單的檔案。
有沒有人可以幫助我。我知道這個問題與代碼無關,但仍然會得到任何幫助。我之前搜索的大多數結果都已過時,實施這些方法通常會導致錯誤,例如不存在的模板等...
同時,我還將檢查官方檔案。
謝謝你。
uj5u.com熱心網友回復:
所以這取決于您使用什么視圖來處理登錄,因為有兩種型別的視圖基于類和基于函式。我使用基于函式的,所以我將用它來解釋你。
首先,您應該設定一個 html 頁面,該頁面將具有獲取用戶名和密碼詳細資訊的表單。我假設您知道如何做到這一點以及如何處理 html 中的表單(如果沒有,請發表評論,也會向您解釋)。所以現在將處理登錄身份驗證的視圖如下
from django.contrib.auth import login,authenticate
def login_page(request):
if request.method == 'POST':
username = request.POST.get('username')
password = request.POST.get('password')
user = authenticate(request, username= username, password= password)
if user is not None:
login(request, user)
return redirect('any_page_you_want_to_send_the_user')
else:
return render(request, 'login.html')
因此,上面的代碼所做的是它接受您從登錄表單發送的 POST 請求,然后從該表單獲取用戶名和密碼。然后它使用 django 的身份驗證功能對用戶進行身份驗證。然后它檢查是否確實存在用戶或者它是無(不存在)。如果條件為真,則登錄當前用戶。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/439424.html
標籤:django
上一篇:python3manage.pymigrate即使從模型類中洗掉欄位也會給出錯誤
下一篇:創建自定義超級用戶django
