Карточка Middle Миграции обновлено

RunPython в миграциях Django

Вопрос

Что такое RunPython и что передают вторым аргументом?

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

Ответьте про себя или вслух, потом откройте ответ и сверьтесь.

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

Коротко

Операция миграции, которая выполняет Python-функцию (apps, schemaeditor), обычно для миграции данных. Вторым аргументом передают обратную функцию; если отката нет смысла делать, migrations.RunPython.noop.

Ответ

Операция миграции, которая выполняет Python-функцию (apps, schema_editor), обычно для миграции данных. Вторым аргументом передают обратную функцию; если отката нет смысла делать, migrations.RunPython.noop.

Разбор

Без обратной функции миграцию нельзя откатить: Django бросит IrreversibleError.

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

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