我有一个带外键的Django模型:
class Library:
name=models.CharField()
class Book:
title=models.CharField()
library=models.ForeignKey(Library)
models.py
class BookAdmin(admin.ModelAdmin):
extra = 0
fields = ['title', 'library__name'] # library__name not found
admin.site.register(Book, BookAdmin)
admin.py
在管理员中,我想显示Book
并在Library.name
视图中显示Book
的可编辑字段(而不是内联方式) ):
> Book
* Title: "Foo"
* Library Name: "Bar"
简单地说,它很简单(只需在Book模型中创建一个返回库名称值的方法),但我无法使其适用于可编辑字段,我尝试使用fields=('title','library.name')
和fields=('title','library__name')
没有成功
答案 0 :(得分:0)
尝试在类似
的模型中使用related_name
library=models.ForeignKey(Library, related_name="library")
然后使用fields=('title','library__name')
,它应该有效。
答案 1 :(得分:0)