如何在管理页面中显示外键对象?

时间:2019-04-25 00:36:23

标签: python django

对于背景,这是我的第一个Django应用。

此任务的基础围绕探索数据库而展开。有区域,并且在这些区域内是位置。这些位置通过外键引用它们所属的区域。在该区域的“更改”页面上,我需要显示该区域的所有位置。这(https://i.postimg.cc/mhfmG21C/assign07-one-area-listing.png)应该是它的样子。

这是我的代码及其当前的外观。我知道有一些方法可以通过外键(ModelAdmin.formfield_for_foreignkey)访问相关的对象,但是我不知道如何使用它们。

    class AreaInLine(admin.StackedInline):
    model = Location
    extra = 1

class AreaAdmin(admin.ModelAdmin):
    #fieldsets = [(None,{'fields': ['id','name','latitude','longitude']}),
     #            ('Locations', {'fields': ['id','name']})]
    inlines = [AreaInLine]

此(https://i.postimg.cc/sxZT8Zx3/Capture.png)是当前的样子。

1 个答案:

答案 0 :(得分:0)

您需要用StackedInline切换TabularInline。试试这个:

class AreaInline(admin.TabularInline):
    model = Location
    extra = 1