#python #django #django-models #django-admin
Вопрос:
Я создаю приложение django, и страница администратора django, похоже, не отражает изменения, которые я вношу admin.py. Например, если я хочу исключить некоторые поля или настроить список изменений администратора, на самой странице ничего не изменится. Единственное, что, кажется, отражено должным образом, — это тот факт, что я могу зарегистрировать модели, и они появятся.
Вот мой admin.py
from django.contrib import admin
from .models import Form, Biuletyn, Ogloszenie, Album
class FormAdmin(admin.ModelAdmin):
exclude = ('img',)
class BiuletynAdmin(admin.ModelAdmin):
list_display = ('name', 'date')
class OgloszenieAdmin(admin.ModelAdmin):
fields = ('name', 'date', 'upload')
admin.site.register(Form)
admin.site.register(Biuletyn)
admin.site.register(Ogloszenie)
admin.site.register(Album)
P.S. Пожалуйста, не обращайте внимания на странные названия моделей. Сайт на самом деле на другом языке 😀
Ответ №1:
Вот как вы регистрируете свой ModelAdmin
:
admin.site.register(Form, FormAdmin)
admin.site.register(Biuletyn, BiuletynAdmin)
admin.site.register(Ogloszenie, OgloszenieAdmin)
Это как зарегистрировать свой Models
:
admin.site.register(Album)
Для получения более подробной информации вы можете обратиться к официальной документации Django по адресу: https://docs.djangoproject.com/en/3.2/ref/contrib/admin/#modeladmin-objects
Ответ №2:
Добавить класс администратора
Так, например, для модели формы:
admin.site.register(Form, admin_class=FormAdmin)