Как не выполнить пользовательскую миграцию данных?

Я написал миграцию данных, которая инициализирует новые таблицы с некоторыми строками. Объекты имеют внешние ключи к другим таблицам, поэтому я должен проверить, существуют ли внешние идентификаторы. Если они не существуют, я хочу остановить миграцию с сообщением об ошибке.

Я написал две функции: forward и reverse. Каков рекомендуемый способ остановки миграции изнутри forward?

def forward(apps, schema_editor):
   ...

def reverse(apps, schema_editor):
   ...

class Migration(migrations.Migration):
    dependencies = [
        ("my_app", "0001_initial"),
    ]

    operations = [
        migrations.RunPython(code=forward, reverse_code=reverse)
    ]
Вернуться на верх