我经常在其他项目的代码中看到这样的例子:
class Modela(models.Model):
abbr = models.CharField()
name = models.TextField()
class Admin:
list_display = ('abbr', 'name',)
不幸的是,当我在自己的代码中执行此操作,然后使用以下命令注册模型时
admin.site.register(Modela)
... list_display
变量被忽略,我得到数据库中每个条目的__str__
输出。
我是否真的需要为每个班级编写单独的ModelAdmin
课程,或者有没有办法按上述方式执行?
答案 0 :(得分:3)
这个语法来自一个非常古老的Django版本 - pre-'newforms-admin',它在三年前发布1.0之前合并。它不再起作用了,绝对没有理由使用它。
如果您只想更改list_display
,则无需创建类:您可以将其传递给注册调用:
admin.site.register(Modela, list_display=('abbr', 'name'))