2014-01-29 57 views
5

我對Django很陌生。我試圖在request.user.get_profile()的幫助下獲取用戶個人資料,但有一個警告,即使用AUTH_PROFILE_MODULE已被棄用。在Django 1.6中獲取用戶配置文件的新方法是什麼?

我在我的settings.py中有一行:AUTH_PROFILE_MODULE = "log_viewer.Configs"其中Configs是一個帶有用於保存用戶配置文件設置的字段的模型。

這樣做的新方法是什麼?

+1

使用自定義用戶 – lalo

+1

您不必切換到自定義用戶(可能涉及複雜的模式更改)以使用Django 1.6。要處理棄用警告,您只需更新代碼中的'AUTH_PROFILE_MODULE'和'get_profile()'替換。如果你使用的是一對一的字段,那麼就像使用'request.user.profile'一樣簡單,就像Daniel的回答所暗示的那樣。 – Alasdair

回答

8

起初,我的用戶創建的個人資料「:

User.profile = property(lambda u: Configs.objects.get_or_create(user=u)[0]) 

,並用它來獲取配置文件:

request.user.profile 
這裏

更多詳細信息:https://code.djangoproject.com/ticket/15937

+1

類'user'中沒有字段'profile'。閱讀django中的'AbstractUser'類。 – vwvolodya

+1

我意識到我已經爲用戶創建了配置文件屬性,並編輯了我的答案。感謝您指出併爲不便之處 –

相關問題