Включение класса Admin в модель? - PullRequest
2 голосов
/ 29 ноября 2011

Я часто видел подобные примеры в коде других проектов:

class Modela(models.Model):
    abbr = models.CharField()
    name = models.TextField()

    class Admin:
        list_display = ('abbr', 'name',)

К сожалению, когда я делаю это в своем собственном коде, а затем регистрирую модель с помощью:

admin.site.register(Modela)

... переменная list_display игнорируется, и я получаю вывод __str__ для каждой записи в базе данных.

Действительно ли мне нужно писать отдельные ModelAdmin классы для каждого класса, или есть способ сделать это, как указано выше?

1 Ответ

3 голосов
/ 29 ноября 2011

Этот синтаксис взят из очень старой версии Django - pre-'newforms-admin ', которая объединилась до выпуска 1.0 более трех лет назад.Он больше не работает, и нет абсолютно никаких оснований его использовать.

Если вы просто хотите изменить list_display, вам не нужно создавать классы: вы можете передать этов регистр звоните:

admin.site.register(Modela, list_display=('abbr', 'name'))
...