我實現了一個django自定義身份驗證後端。我的authenticate()返回像這樣的用戶對象return User(username=username, password=password)
,但我從不將User對象存儲到數據庫。爲什麼django需要一個數據庫用於自定義身份驗證後端?
爲什麼django文檔建議使用用戶對象創建數據庫? (https://docs.djangoproject.com/en/1.4/topics/auth/#writing-an-authentication-backend - 「...處理這個問題的最好方法是爲每個用戶創建一個Django用戶對象,存在爲您的後端...「)
如果我嘗試呼叫登錄(),有一個對數據庫的調用。如果登錄存儲在會話中,爲什麼需要數據庫? (使用緩存會話)
謝謝,這是有道理的。對我來說,讓用戶存儲在兩個不同的數據庫1)自定義後端2)django數據庫似乎很奇怪。例如,如果用戶更改了密碼,那麼需要完成一些額外的簿記工作,以確保在兩個地方完成更改。 – jastr
是的,你的用例肯定很尷尬。整個'auth.User'情況是一個正在討論如何使它更加靈活的領域。 –