Урок 19. Модели и админ-панель. Работа с пользователями

📁 Блок: Django ⏱️ Время изучения: ~70 мин 🎯 Сложность: Средняя
#django #admin #ModelAdmin #meta #users #AbstractUser

⚡ Кратко: Django Admin + __str__ + Meta + пользователи

Три темы урока: 1) метод __str__ — читаемое отображение объектов; 2) класс Meta — метаданные модели; 3) Django Admin — настройка через ModelAdmin.

  • __str__: возвращает строковое представление объекта модели
  • Meta: db_table, ordering, verbose_name, unique_together, indexes, constraints
  • ModelAdmin: list_display, search_fields, list_filter, ordering, fields, list_per_page
  • Регистрация: admin.site.register(Model, Admin) или @admin.register(Model)
  • Суперпользователь: python manage.py createsuperuser

Топ-3 ошибки: 1) Не определить __str__ — объекты отображаются как "Book object (1)". 2) Использовать unique_together вместо UniqueConstraint. 3) Не зарегистрировать модель в admin.py.

📖 О чём этот урок

Этот урок посвящён расширенной работе с моделями Django и настройке административной панели. Материал основан на лекции «Модели и админ-панель» (Python Advanced, урок 17 по нумерации LMS).

Что изучим

  • Метод __str__: зачем нужен и как правильно определять
  • Класс Meta: все основные атрибуты с примерами
  • Административная панель Django: создание класса ModelAdmin
  • Атрибуты ModelAdmin: list_display, search_fields, list_filter, ordering, fields, list_per_page
  • Два способа регистрации модели: admin.site.register и @admin.register

📚 Что повторить перед изучением

  • ← Урок 18: Summary session 4
  • Основы моделей Django: поля, типы, параметры — Урок 16
  • Регистрация базовая: admin.site.register(Model)
  • Создание суперпользователя: python manage.py createsuperuser

🎯 Что изучать дальше