Как программно отменить миграции или удалить таблицу? Используя schema_editor в файле миграции
Я хочу отменить миграционный файл 1.py и применить 2.py и 3.py. Как я могу сделать это программно? Например, используя schema_editior в 2.py или в 1.py
def remove_tables_from_1(apps, schema_editor):
*function to remove*
migrations.RunPython(remove_tables_from_1),
Для отмены всех миграций выполните:
python manage.py migrate my_app zero
После отмены миграций можно удалить таблицы в базе данных.
Для удаления таблиц обратитесь к этому ответу Loctarogar.
Используйте команду dbshell
python manage.py dbshellзатем, находясь в оболочке, в зависимости от того, какую базу данных вы используете, вы набираете команду show tables, чтобы определить таблицу, которую вы хотите сбросить. Например, для sqlite вы используете команду.tablesвсе еще находясь в оболочке, вы можете использовать команду SQL, чтобы сбросить таблицуDROP TABLE shop_brand;