2014-10-12 97 views
1

我有一個登錄表單。另外我有一個龐大的數據庫。 DB中的一個表是'zusers',其中存儲有關用戶的信息:usernamepassword,'telefon'和其他一些列。我瞭解了user = auth.authenticate(username = 'John', password = 'pass')。問題:wheredoes這個函數檢查這個用戶是否存在或不存在?以及如何做到這一點,以便此功能檢查我的數據庫表'zusers'中的用戶?函數auth.authenticate()在哪裏檢查用戶是否存在?

回答

1

您將需要在Django中爲您的現有用戶創建自定義身份驗證後端。您可以在Django Docs上閱讀更多內容:https://docs.djangoproject.com/en/dev/topics/auth/customizing/

您不需要手動檢查auth.authenticate,只是換出後端。

您也可以替換一個完全定製的模型爲你的Django用戶支持telefon,在其他列你有https://docs.djangoproject.com/en/dev/howto/custom-model-fields/

我不會張貼任何示例代碼,你沒有提供任何自己和Django的上面的鏈接非常清楚地告訴你如何實現這一目標。

+0

我讀了一篇關於驗證後端的文章,所以我仍然有一個問題:如何爲我的數據庫中的每一行創建用戶模型?文章中有一個解釋,我們可以爲每次登錄嘗試創建一個新的用戶模型。但是,如何將所有用戶從我的數據庫轉移到擴展用戶模型? – andriy 2014-10-21 20:16:30