Отношения "многие-ко-многим" с таблицей "Я" Django

У меня есть таблица с самоссылающимся столбцом с отношениями "многие-ко-многим"

class PanelUser(core_models.TimestampedModel):
    assigned = models.ManyToManyField("self", related_name="panelusers", blank=True)

    def __str__(self):
        return self.user.username

Проблема У меня есть три записи A, B, C и если я и присваиваю A = B то автоматически присваивается B = A

Я не понимаю, почему это происходит, как мне это исправить.

A ManyToManyField принимает параметр symmetrical при использовании "self", при установке в False он предотвращает описанное вами поведение и делает отношения асимметричными

assigned = models.ManyToManyField(
    "self",
    related_name="panelusers",
    blank=True,
    symmetrical=False
)
Вернуться на верх