Django:我必须为admin提供list_display吗?

时间:2015-11-09 12:19:18

标签: django django-models django-forms django-admin

如果我在Django 1.8 admin中为特定模型明确提供ModelAdmin,是否必须明确设置list_display成员?

如果我不想让Django使用默认值(例如,模型中定义的顺序除了id之外的所有字段)?

1 个答案:

答案 0 :(得分:3)

您不必明确定义list_display。如果省略它,将显示一个包含str(Model)值的列。如果你为你的模型定义了__str__函数(Python 3),那么将返回该值,否则就像'MyModel object'。该值也将是您的模型表单的链接。

因此,我认为定义您想要使用的字段是一个好习惯。

另请注意,如果list_editable中没有list_display中的字段,则无法使用这些字段。这会给出一个:

SystemCheckError: (admin.E122) The value of 'list_editable[X]' refers to 'Y', which is not contained in 'list_display'.`