Make unique index worked

This commit is contained in:
long2ice 2020-05-19 13:49:00 +08:00
parent f54e701600
commit 12ff10c594
2 changed files with 7 additions and 2 deletions

View File

@ -7,6 +7,7 @@ ChangeLog
0.1.4
-----
- Fix transaction and fields import.
- Make unique index worked.
0.1.3
-----

View File

@ -246,7 +246,9 @@ class Migrate:
)
else:
old_field = old_fields_map.get(new_key)
if old_field.index and not new_field.index:
if (old_field.index and not new_field.index) or (
old_field.unique and not new_field.unique
):
cls._add_operator(
cls._remove_index(
old_model, [old_field.model_field_name], old_field.unique
@ -254,7 +256,9 @@ class Migrate:
upgrade,
isinstance(old_field, (ForeignKeyFieldInstance, ManyToManyFieldInstance)),
)
elif new_field.index and not old_field.index:
elif (new_field.index and not old_field.index) or (
new_field.unique and not old_field.unique
):
cls._add_operator(
cls._add_index(new_model, [new_field.model_field_name], new_field.unique),
upgrade,