Выбор ответа Junior Миграции обновлено

Где хранится, какие миграции применены

Вопрос

Откуда Django знает, какие миграции уже применены к базе?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Из таблицы djangomigrations в самой базе. После применения миграции Django записывает строку (приложение, имя миграции, время) в таблицу djangomigrations.

Варианты ответа

  1. Из таблицы django_migrations в самой базеправильный ответ
  2. Из файла migrations/applied.txt
  3. Сравнивает схему базы с моделями при каждом запуске
  4. Из настроек settings.py

Разбор

После применения миграции Django записывает строку (приложение, имя миграции, время) в таблицу django_migrations. Схему базы он не сравнивает: если вручную поменять таблицу, Django об этом не узнает. В Alembic аналогичная роль у таблицы alembic_version с текущей ревизией.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.