Django Admin inline для рекурсивного ManyToMany

У меня есть следующая модель с отношением «многие-ко-многим» к себе

class Ticket(models.Model): STATUS = ( (0, "Open"), (1, "Closed"), ) status = models.SmallIntegerField(default=0,choices=STATUS) title = models.CharField(max_length=100) replies = models.ManyToManyField('self') description = models.TextField() 

Я пытаюсь отобразить эту модель как встроенную в admin, используя следующий код

 class TicketReply(admin.TabularInline): model = Ticket.replies.through 

однако я продолжаю получать эту ошибку

 <class 'tsn.ticket.models.Ticket_replies'> has more than 1 ForeignKey to <class 'tsn.ticket.models.Ticket'> 

так что я делаю это неправильно, или это не поддерживается?

One Solution collect form web for “Django Admin inline для рекурсивного ManyToMany”

Может быть, его «поздно», но я пытаюсь ответить на этот вопрос. Ticket.replies.through представляет собой таблицу для управления отношениями «многие ко многим», у нее есть поля from_ticket и to_ticket (FK для моделирования Ticket), и вы можете установить эти поля в качестве опции fk_name для TabularInline.

 class TicketReply(admin.TabularInline): model = Ticket.replies.through fk_name = 'from_ticket' 
  • Найти объекты с датой и временем менее чем через 24 часа
  • Django: переопределить метку поля или help_text в дочерней модели Model
  • Django ORM - mock values ​​(). Filter () цепочка
  • Получите количество результатов из функции запроса raw () Django
  • Получение первого элемента позиции в отношении многих ко многим в Django
  • Уровень изоляции транзакций в Django ORM
  • Фильтр Django QuerySet + limit_by + limit
  • Когда Django просматривает первичный ключ внешних ключей?
  • Python - лучший язык программирования в мире.