Авто Self Многие ко многим Отношениям на Post Save - PullRequest
0 голосов
/ 27 февраля 2019

Я создал отношение "многие ко многим" в своей модели, и я хочу автоматически добавить отношение к себе.

Я добавлю это поле в свою модель:

client = models.ManyToManyField('self', blank=True, symmetrical=False)

Я попробовал два способа:

один из них - функция сохранения модели:

def save(self, *args, **kwargs):
    self.client.add(self)
    super().save(*args, **kwargs)

Второй способ - это сигнал после сохранения:

@receiver(post_save, sender=Company)
def post_save_receiver(sender, instance, *args, **kwargs):    
    instance.client.add(instance)
    instance.save()

, но связь не возникает, и выдает мне эту ошибку:

django.db.utils.IntegrityError: UNIQUE constraint failed: accounts_company.id
...