Django TabularInline и поле из связанных моделей

используя django admin на существующей базе данных, я установил отношение "многие ко многим" между "Contact" и "Groupe" на основе промежуточной модели "Contactgroup".

В форме администратора "Группы" я добавляю таблицу в строке, чтобы показать все группы контактов. Все нормально, но я получаю ошибку при добавлении полей из связанных контактов.

model.py

class Contact(models.Model):
    id = models.IntegerField(primary_key=True)
    e_mail = models.TextField()
    ...

class Contactgroup(models.Model):
    id = models.IntegerField(primary_key=True)
    id_contact = models.ForeignKey(Contact, on_delete=models.CASCADE,db_column="id_contact",
                                   blank=False, null=False, verbose_name='Contact')
    id_groupe = models.ForeignKey(Groupe, on_delete=models.CASCADE,db_column="id_groupe",
                                   blank=False, null=False, verbose_name='Groupe')

admin.py

class MyContactgroupInline(admin.TabularInline):
    model = Contactgroup
    fields = ['id','id_contact']

MyGroupeModelAdmin.inlines = [MyContactgroupInline,]

Затем я пытаюсь добавить поле Contact e_mail :

class MyContactgroupInline(admin.TabularInline):
    model = Contactgroup
    fields = ['id','id_contact', 'id_contact__e_mail']

MyGroupeModelAdmin.inlines = [MyContactgroupInline,]

Я получаю :

Неизвестное поле (поля) (id_contact__e_mail) указано для Contactgroup

я наконец-то использовал новый метод в классе MyContactgroupInline(admin.TabularInline):

@admin.display(description='E-mail')
def getEmail(self, item):
    return item.id_contact.e_mail
Вернуться на верх