Регистрация моделей в админ-панели
Мы собираемся добавить модели курсов в админ-панель. Откройте файл admin.py в каталоге приложения courses и добавьте в него следующий код:
from django.contrib import admin
from .models import Subject, Course, Module
@admin.register(Subject)
class SubjectAdmin(admin.ModelAdmin):
list_display = ['title', 'slug']
prepopulated_fields = {'slug': ('title',)}
class ModuleInline(admin.StackedInline):
model = Module
@admin.register(Course)
class CourseAdmin(admin.ModelAdmin):
list_display = ['title', 'subject', 'created']
list_filter = ['created', 'subject']
search_fields = ['title', 'overview']
prepopulated_fields = {'slug': ('title',)}
inlines = [ModuleInline]
Модели для приложения courses теперь отображаются в админ-панели. Вместо функции admin.site.register() используется декоратор @admin.register(). Оба предоставляют одинаковые функциональные возможности.