Как передать экземпляр в моделях в сигналах? - PullRequest
0 голосов
/ 15 мая 2019

У меня есть следующая модель:

class Profile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    education = models.CharField(blank=True, null=True, max_length=255)
    country = models.CharField(blank=True, null=True, max_length=255)
    facebook = models.CharField(blank=True, null=True, max_length=255)
    whatsapp = models.CharField(blank=True, null=True, max_length=255)
    description = models.TextField(blank=True)

Я создаю сигнал, что после сохранения пользователя, он создает профиль, связанный с этим, код ниже мой сигнал.Я не знаю, как передать instance в Profile.objects.create.Я размышляю, что передаваемый экземпляр типа instance.education, instance.country ... неверен или есть другие ошибки в этом сигнале, потому что я получаю эту ошибку User has no profile.Пожалуйста, помогите мне исправить это, спасибо

signals.py

@receiver(post_save, sender=User)
def create_profile(sender, instance, created, **kwargs):
    print("INSTANCE BELOW:")
    print(instance)
    if created:
        Profile.objects.create(user=instance, education=instance.education,
                               country=instance.country, facebook=instance.facebook,
                               whatsapp=instance.whatsapp, description=instance.description)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...