Django allauth&&使用post_save创建UserProfile

时间:2013-12-17 16:55:51

标签: django django-signals django-allauth

我正在使用django-allauth对来自不同社交网站的用户进行身份验证。当我在我的数据库中创建用户时,我想调用一个可以创建UserProfile(或者会做某事)的函数,并且为了达到这个目的,最好使用 signals.post_save 。 / p>

我有多个django应用程序,当然我不想更改核心django-allauth,所以我的问题是我在哪里放置 post_save 代码?

感谢。

1 个答案:

答案 0 :(得分:3)

您可以在本地创建一个accounts应用以保存UserProfile以及与之关联的所有内容。你可能有:

# Connecting to AllAuth Signals
from allauth.account.signals import user_signed_up
from django.dispatch import receiver

@receiver(user_signed_up)
def new_user_signup(sender, **kwargs):
    p = UserProfile(user = kwargs['user'])
    p.save()