Отношения администратора 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
Но все, что показывает:
- Сессия с информацией
- Список документов в сессии
- Вложенный список подписей в документе (я хотел бы отобразить подписавших между документами и подписями)
Что я упускаю?