可以在Django ModelAdmin中的“list_display”显示ForeignKey字段的属性吗?

问题:

我有一个与外部关系关系的人模型。书有很多领域,但我最关心的是“作者”(标准的CharField)。
就这样说,在我的PersonAdmin模型中,我想使用“list_display”显示“book.author”。我已经尝试了所有这些明显的方法(见下文),但似乎没有任何效果。有什么建议么?

class PersonAdmin(admin.ModelAdmin):
  list_display = ['book.author',]

回答:

作为另一个选择,你可以做一些查找:

class UserAdmin(admin.ModelAdmin):
    list_display = (..., 'get_author')

    def get_author(self, obj):
        return obj.book.author
    get_author.short_description = 'Author'
    get_author.admin_order_field = 'book__author'

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: Can “list_display” in a Django ModelAdmin display attributes of ForeignKey fields?

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

9 + 1 =