2
我正在尋找使用我創建的帳戶模型來處理有關用戶的財務數據。我如何確保django-allauth在註冊用戶時創建此模型,並通過新用戶和帳戶模型的關鍵字鏈接?在創建用戶時使用多個模型
我正在尋找使用我創建的帳戶模型來處理有關用戶的財務數據。我如何確保django-allauth在註冊用戶時創建此模型,並通過新用戶和帳戶模型的關鍵字鏈接?在創建用戶時使用多個模型
您可以實現自定義管道。首先修改SOCIAL_AUTH_PIPELINE
在Django settings
文件是這樣的:
SOCIAL_AUTH_PIPELINE = (
'social.pipeline.social_auth.social_details',
'social.pipeline.social_auth.social_uid',
'social.pipeline.social_auth.auth_allowed',
'social.pipeline.social_auth.social_user',
'social.pipeline.user.get_username',
'social.pipeline.user.create_user',
'social.pipeline.social_auth.associate_user',
'social.pipeline.social_auth.load_extra_data',
'social.pipeline.user.user_details',
'yourapp.pipeline.add_account'
)
然後在yourapp
創建pipeline
模塊,也可以使用已有的模型該模型中創建功能add_account
與下面的代碼:
def add_account(backend, details, response, user=None, is_new=False, *args, **kwargs):
if is_new:
Account.objects.create(user=user)
UPDATE
管道只是功能至極將由Django的allauth期間autentication過程中被調用。所以你可以在這個過程中添加一些自定義函數。
我不熟悉管道是如何工作的,你能提供更多的細節嗎? –
@AlexCreamer檢查我的更新。 – neverwalkaloner
你怎麼把用戶=用戶創建賬戶?我不只需要使用PK? –