我有两个模型:
class Person(models.Model):
person_name = models.CharField(max_length=255)
def __unicode__(self):
return self.person_name
以及
class Book(models.Model):
link = models.ForeignKey(Person)
book_name = models.CharField(max_length=255)
book_year = models.CharField(max_length=255)
book_email = models.CharField(max_length=255)
def __unicode__(self):
return self.name
admin.py
class PersonAdmin(admin.ModelAdmin):
inlines = ('BookInline',)
list_display = ('person_name', ...)
class BookInline(admin.TabularInline):
model = Book
extra = 1
max_num = 1
在PersonAdmin
list_display中,如何显示内联模型Book
字段(标题、名称、电子邮件)?
所以当我访问django admin中的Person
条目列表时,我看到:
x一个三个一个x一个四个一个x一个五个一个x一个六个一个
3条答案
按热度按时间67up9zun1#
PersonAdmin
的list_display
意味着每个人只显示一次,包含book模型的属性实际上没有意义,因为如果他们有多本书,那么你必须多次包含这个人。在书的
list_display
中包含这个人的名字不是更好吗?gj3fmq9x2#
根据文档,您可以使用可调用对象来显示字段。
编辑(2021年3月21日):到1.9文档的链接不再工作了,但是源代码仍然可用。2我也添加了到开发版本的链接。
kx5bkwkv3#
StackedInline将解决您的问题