Я недавно получил столкновение ForeignKey в моей модели Django.У меня есть необходимость иметь два внешних ключа (владельца, assign_to), в конечном итоге указывающих на одну и ту же модель (пользователя).
Насколько я понимаю, мне нужен аргумент related_name
для решения этой проблемы.Итак, я сделал это:
assigned_to = models.ForeignKey(TaskUser, blank=True, null=True, related_name='user_assignment')
и
owner = models.ForeignKey(TaskUser, related_name="user_ownership"
Но я все еще получаю сообщение об ошибке:
tasks.task: Accessor for field 'owner' clashes with related field 'TaskUser.user
_ownership'. Add a related_name argument to the definition for 'owner'.
tasks.task: Reverse query name for field 'owner' clashes with related field 'TaskUser.user_ownership'. Add a related_name argument to the definition for 'owner'.
Почему я все еще получаю эту ошибку?
Есть одна уловка, owner
в суперклассе (BaseWidget) и assigned_to
в подклассе (Task).Есть ли проблемы с использованием related_name
в отношениях наследования?Нужно ли просто переопределить наследование владельца и переопределить related_name
в подклассе?Буду признателен за любую помощь!