我目前有一个信号,当用户注册网站时,它会自动为用户创建一个令牌对象
我还有一个自定义用户模型UserProfileInfo
,其中有一个字段将令牌连接到用户
token = models.OneToOneField(Token,related_name='token',on_delete=models.CASCADE,blank=True,null=True)
但是,我希望在创建userprofileinfo时自动分配此参数,这在信号中发生
@receiver(post_save, sender=User)
def create_auth_token(sender, instance, created, **kwargs):
if created:
token = Token.objects.create(user=instance)
UserProfileInfo
@receiver(post_save, sender=User)
def create_or_update_user_profile(sender, instance, created, **kwargs):
if created:
UserProfileInfo.objects.create(user=instance)
else:
instance.userprofileinfo.save()
(第一个信号创建令牌,第二个信号创建userprofileinfo)
我想知道如何在创建userprofileinfo时自动将令牌分配给用户
可以在一个信号方法中包含两个任务的代码
您可以做的是,首先创建UserProfileInfo对象,然后为用户创建一个令牌
相关问题 更多 >
编程相关推荐