У меня проблема миграции с приложением Django 1.8.2. Я использую две модели: Product
и Fee
. Product
недавно изменился на свое поле unique_together
. Fee
не внес изменений в поле unique_together
. Когда я бегу ./manage.py makemigrations
я получаю файл с двумя пересадками:Django 1.8 создает миграцию, но ничего не изменилось
operations = [
migrations.AlterUniqueTogether(
name='fee',
unique_together=set([('product', 'fee_type', 'content_type', 'object_id', 'activation_date')]),
),
migrations.AlterUniqueTogether(
name='product',
unique_together=set([('producer', 'product_type', 'term')]),
),
]
Вы заметите, что меняется уникальное вместе ограничение для Product
, который прекрасно. Но тогда он также делает это для Fee
. Это вызывает и ошибку, потому что это единственное ограничение связи уже существует в базе данных. Ошибка django.db.utils.ProgrammingError: relation "product_fee_product_id_7b033c697cde4424_uniq" already exists
Каждый раз, когда я бегу ./manage.py makemigrations
я получаю AlterUniqueTogether
материал для Fee
модели, даже если я просто закомментировать или удалить его из файла с обеих миграций. Как я могу предотвратить обнаружение makemigrations
этого несуществующего изменения?
Вы пробовали 'flush' и' reset' – taesu
У меня нет, нет. Я не думаю, что знаком с этими командами. – grantmcconnaughey
'flush' сбрасывает данные в вашем db,' reset' перезагружает таблицы. – taesu