현재 사용자가 웹 사이트에 가입 할 때 자동으로 토큰 개체를 생성하는 신호가 있습니다.
또한 사용자 정의 사용자 모델 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 개체를 만든 다음 사용자에 대한 토큰을 만드는 것입니다.
@receiver(post_save, sender=User)
def create_or_update_user_profile(sender, instance, created, **kwargs):
if created:
UserProfileInfo.objects.create(user=instance)
token = Token.objects.create(user=instance)
else:
instance.userprofileinfo.save()
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다