diff --git a/django/db/migrations/operations/models.py b/django/db/migrations/operations/models.py index 5b052b4734..e195d9d841 100644 --- a/django/db/migrations/operations/models.py +++ b/django/db/migrations/operations/models.py @@ -106,8 +106,6 @@ class RenameModel(Operation): Renames a model. """ - reversible = False - def __init__(self, old_name, new_name): self.old_name = old_name self.new_name = new_name diff --git a/docs/releases/1.7.2.txt b/docs/releases/1.7.2.txt index 0fe97a3225..4955f30946 100644 --- a/docs/releases/1.7.2.txt +++ b/docs/releases/1.7.2.txt @@ -65,3 +65,6 @@ Bugfixes * Fixed :djadmin:`squashmigrations` to respect the ``--no-optimize`` parameter (:ticket:`23799`). + +* Made :class:`~django.db.migrations.operations.RenameModel` reversible + (:ticket:`22248`) diff --git a/tests/migrations/test_operations.py b/tests/migrations/test_operations.py index 4fb93d22de..e44c3a7931 100644 --- a/tests/migrations/test_operations.py +++ b/tests/migrations/test_operations.py @@ -433,8 +433,7 @@ class OperationTests(OperationTestBase): self.assertFKNotExists("test_rnmo_rider", ["pony_id"], ("test_rnmo_pony", "id")) self.assertFKExists("test_rnmo_rider", ["pony_id"], ("test_rnmo_horse", "id")) # And test reversal - with connection.schema_editor() as editor: - operation.database_backwards("test_rnmo", editor, new_state, project_state) + self.unapply_operations("test_rnmo", project_state, [operation]) self.assertTableExists("test_rnmo_pony") self.assertTableNotExists("test_rnmo_horse") if connection.features.supports_foreign_keys: