allauth 注册后未创建自定义用户模型对象
Custom user model object not created after allauth signup
我正在尝试在新用户使用 allauth's signal 注册后立即创建自定义用户对象(作者模型),注册工作正常并且创建了用户但对象(作者)不是正在创建。
这是我的作者(自定义用户)模型:
class Author(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
def __str__(self):
return self.user.first_name + ' ' + self.user.last_name
这是我的看法:
@receiver(user_signed_up)
def after_user_signed_up(request, user):
author = Author.objects.create(user=user)
知道我可能做错了什么吗?我是否应该以不同方式设置自定义用户以使其工作?稍后我将向 Author 模型添加更多字段,我看到建立一对一关系应该是可行的方法,但不确定为什么这不起作用。
提前致谢!
我找到了答案 - 我需要:
- 将函数移动到我的 model.py 模块中,或者
- 在我的视图或 signals.py 模块中保留功能,但将该模块手动添加到我的 apps.py 文件中:
from django.apps import AppConfig
class NameOfAppConfig(AppConfig):
name = 'NameOfApp'
def ready(self):
import NameOfApp.signals
我正在尝试在新用户使用 allauth's signal 注册后立即创建自定义用户对象(作者模型),注册工作正常并且创建了用户但对象(作者)不是正在创建。
这是我的作者(自定义用户)模型:
class Author(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
def __str__(self):
return self.user.first_name + ' ' + self.user.last_name
这是我的看法:
@receiver(user_signed_up)
def after_user_signed_up(request, user):
author = Author.objects.create(user=user)
知道我可能做错了什么吗?我是否应该以不同方式设置自定义用户以使其工作?稍后我将向 Author 模型添加更多字段,我看到建立一对一关系应该是可行的方法,但不确定为什么这不起作用。
提前致谢!
我找到了答案 - 我需要:
- 将函数移动到我的 model.py 模块中,或者
- 在我的视图或 signals.py 模块中保留功能,但将该模块手动添加到我的 apps.py 文件中:
from django.apps import AppConfig
class NameOfAppConfig(AppConfig):
name = 'NameOfApp'
def ready(self):
import NameOfApp.signals