Django - Cannot assign "<User: testuser>": "Profilavas.category" must be a "Profiles" instance
Я сталкиваюсь с ошибкой , Cannot assign "<User: testuser>": "Profilavas.category" must be a "Profiles" instance. Не удаётся в поле - category назначить id модели Profiles
class Profiles(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
firstname = models.TextField(blank=True, null=True)
lastname = models.TextField(blank=True, null=True)
gender = models.CharField(("gender"), max_length=20)
class Profilavas(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE, unique=True)
avatar = models.ImageField(default='default.jpg', upload_to='profile_images')
category = models.OneToOneField('Profiles',on_delete = models.CASCADE)
def __str__(self):
return self.user.username
def save(self, *args, **kwargs):
super().save()
img = Image.open(self.avatar.path)
if img.height > 900 or img.width > 900:
new_img = (900, 900)
img.thumbnail(new_img)
img.save(self.avatar.path)
@receiver(post_save, sender=User)
def create_user_profile(sender, instance, created, **kwargs):
if created:
Profiles.objects.create(user=instance)
Profilavas.objects.create(user=instance , category=instance)
Проблема возникает когда вызывается сигнал "Profilavas.objects.create(user=instance , category=instance)"
Источник: Stack Overflow на русском