summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--django/db/migrations/operations/models.py4
-rw-r--r--django/db/migrations/state.py2
-rw-r--r--tests/migrations/test_operations.py8
3 files changed, 10 insertions, 4 deletions
diff --git a/django/db/migrations/operations/models.py b/django/db/migrations/operations/models.py
index 1c2f209df3..1ded7c6db4 100644
--- a/django/db/migrations/operations/models.py
+++ b/django/db/migrations/operations/models.py
@@ -248,7 +248,7 @@ class AlterUniqueTogether(Operation):
return name.lower() == self.name.lower()
def describe(self):
- return "Alter %s for %s (%s constraint(s))" % (self.option_name, self.name, len(self.unique_together))
+ return "Alter %s for %s (%s constraint(s))" % (self.option_name, self.name, len(self.unique_together or ''))
class AlterIndexTogether(Operation):
@@ -288,7 +288,7 @@ class AlterIndexTogether(Operation):
return name.lower() == self.name.lower()
def describe(self):
- return "Alter %s for %s (%s constraint(s))" % (self.option_name, self.name, len(self.index_together))
+ return "Alter %s for %s (%s constraint(s))" % (self.option_name, self.name, len(self.index_together or ''))
class AlterOrderWithRespectTo(Operation):
diff --git a/django/db/migrations/state.py b/django/db/migrations/state.py
index ab1c39f8ee..d24a37e5b9 100644
--- a/django/db/migrations/state.py
+++ b/django/db/migrations/state.py
@@ -272,8 +272,6 @@ class ModelState(object):
# First, make a Meta object
meta_contents = {'app_label': self.app_label, "apps": apps}
meta_contents.update(self.options)
- if "unique_together" in meta_contents:
- meta_contents["unique_together"] = list(meta_contents["unique_together"])
meta = type(str("Meta"), tuple(), meta_contents)
# Then, work out our bases
try:
diff --git a/tests/migrations/test_operations.py b/tests/migrations/test_operations.py
index 63e9946e1e..0091ec4e59 100644
--- a/tests/migrations/test_operations.py
+++ b/tests/migrations/test_operations.py
@@ -899,6 +899,10 @@ class OperationTests(OperationTestBase):
operation.state_forwards("test_alunto", new_state)
self.assertEqual(len(new_state.models["test_alunto", "pony"].options.get("unique_together", set())), 1)
+ def test_alter_unique_together_remove(self):
+ operation = migrations.AlterUniqueTogether("Pony", None)
+ self.assertEqual(operation.describe(), "Alter unique_together for Pony (0 constraint(s))")
+
def test_alter_index_together(self):
"""
Tests the AlterIndexTogether operation.
@@ -922,6 +926,10 @@ class OperationTests(OperationTestBase):
operation.database_backwards("test_alinto", editor, new_state, project_state)
self.assertIndexNotExists("test_alinto_pony", ["pink", "weight"])
+ def test_alter_index_together_remove(self):
+ operation = migrations.AlterIndexTogether("Pony", None)
+ self.assertEqual(operation.describe(), "Alter index_together for Pony (0 constraint(s))")
+
def test_alter_model_options(self):
"""
Tests the AlterModelOptions operation.