Django多对多,在管理员中显示

时间:2017-12-26 14:06:13

标签: django

请帮助理解在这种情况下如何在Django admin Person 实例中显示组列表:

class Person(models.Model):
  name = models.Charfield(max_length=120)

class Group(models.Model):
  title = models.Charfield(max_length=120)
  persons = models.ManyToManyField(Person)

1 个答案:

答案 0 :(得分:3)

您需要使用inlines。将其添加到admin.py文件:

from .models import Group

class GroupInline(admin.TabularInline):
    model = Group.persons.through
    extra = 1

class PersonAdmin(admin.ModelAdmin):
    inlines = [GroupInline]

admin.site.register(Person, PersonAdmin)

详见here