summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
authorAndy Chosak <andy@chosak.org>2023-03-18 14:02:12 -0400
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2023-03-20 06:23:08 +0100
commitb295b311712b598c053f7fa8cf6e6882217e35d9 (patch)
treeae6c5a919f9257bfa85dbf8f2a891484d0be1741 /django
parent0eb3e9bd754e4c9fac8b616b705178727fc8031e (diff)
downloaddjango-b295b311712b598c053f7fa8cf6e6882217e35d9.tar.gz
Fixed #34420 -- Corrected the order of imports in generated migration files.
Diffstat (limited to 'django')
-rw-r--r--django/db/migrations/writer.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/django/db/migrations/writer.py b/django/db/migrations/writer.py
index a59f0c8dcb..79b89b269d 100644
--- a/django/db/migrations/writer.py
+++ b/django/db/migrations/writer.py
@@ -175,7 +175,10 @@ class MigrationWriter:
# Sort imports by the package / module to be imported (the part after
# "from" in "from ... import ..." or after "import" in "import ...").
- sorted_imports = sorted(imports, key=lambda i: i.split()[1])
+ # First group the "import" statements, then "from ... import ...".
+ sorted_imports = sorted(
+ imports, key=lambda i: (i.split()[0] == "from", i.split()[1])
+ )
items["imports"] = "\n".join(sorted_imports) + "\n" if imports else ""
if migration_imports:
items["imports"] += (