Отношения администратора Django и MTM

Я работаю со следующей схемой:

class Session (models.Model):
    uuid = # uuid
    status = # charfield

class Document (models.Model):
    session = models.ForeignKey(Session)
    signers = models.ManyToManyField(Signer, through='Signature', related_name='documents')

class Signer(models.Model):
    uuid = # uuid

class Signature(models.Model):
    signer = models.ForeignKey(Signer)
    document = models.ForeignKey(Document)

Сейчас я пытаюсь создать детальное представление администратора, где я могу отобразить:

  • Информация о сессии
  • Список документов в сессии
  • Вложенный список на документ для всех подписавших документ
  • Вложенный список для каждого подписанта со всеми подписями для подписанта

Пока что я придумал:

@admin.register(Session)
class SessionAdmin(nested_admin.NestedModelAdmin):
    search_fields = ("status", )
    list_display = ("uuid", )
    inlines = [DocumentInline]
    can_delete = False

class InSignDocumentInline(nested_admin.NestedTabularInline):
    model = Document
    inlines = [
        InSignSignerInLine,
    ]
    exclude = ['signers', ]

class SignerInLine(nested_admin.NestedTabularInline):
    model = Document.signers.through

Но все, что показывает:

  • Сессия с информацией
  • Список документов в сессии
  • Вложенный список подписей в документе (я хотел бы отобразить подписавших между документами и подписями)

Что я упускаю?

Вернуться на верх