Django - колонка отношения уже существует - должен ли я использовать --fake?

У меня есть приложение Django, использующее PostgreSQL с tenant_schemas.

Моя БД была импортирована из файла .sql, и теперь мне нужно запустить миграции (с некоторыми изменениями в ней, отличающимися от исходной БД, импортированной из .sql).

Когда я делаю это, я получаю:

django.db.utils.ProgrammingError: column "active_vendor" of relation "analysis_supplier" already exists

Я исследовал эту проблему, и похоже, что некоторые люди (на stackoverflow) рекомендуют использовать --fake для этой ситуации.

Но согласно документации django:

--fake

Marks the migrations up to the target one (following the rules above) as applied, but without actually running the SQL to change your database schema.

This is intended for advanced users to manipulate the current migration state directly if they’re manually applying changes; be warned that using --fake runs the risk of putting the migration state table into a state where manual recovery will be needed to make migrations run correctly.

Как я понимаю, это означает, что миграция будет только добавлена в таблицу миграций django, а SQL-код выполняться не будет. Не думаю, что мне это нужно.

Я неправильно его понимаю? Если да, то должен ли я использовать --fake в моей ситуации?

Если нет, то как мне исправить эту ситуацию?

Вернуться на верх