2017-10-05 112 views
0

我要如何讓我的用戶驗證密碼,只要他們想改變他們的生物。如何讓用戶再次驗證密碼(只是密碼)?

或者任何人都可以請簡單告訴我如何提取self.request.user的密碼,如User.password或其他東西。

我是從我的手機和 寫這個我已經非常簡單的模型,所以我認爲沒有人會需要代碼,它

回答

1

您可以使用類似:

self.request.user.check_password(request.POST['reset_password']) 

檢查doc here:https://docs.djangoproject.com/en/1.11/ref/contrib/auth/#django.contrib.auth.models.User.check_password

Django從不存儲原始密碼,像user.password這樣的東西會給你一個你不能反轉的密碼的散列版本。這就是爲什麼您需要對來自用戶輸入的內容進行散列並對散列版本進行比較。 check_password將爲您做到這一點。

有關Django如何管理密碼的更多信息:https://docs.djangoproject.com/en/1.11/topics/auth/passwords/