summaryrefslogtreecommitdiff
path: root/django/db/backends/sqlite3
diff options
context:
space:
mode:
authorMariusz Felisiak <felisiak.mariusz@gmail.com>2022-11-04 09:30:23 +0100
committerGitHub <noreply@github.com>2022-11-04 09:30:23 +0100
commit7b0e9ea53ca99de2f485ec582f3a79be34b531d4 (patch)
tree06b78217b7f974b5179d6c145955a869a0a875b9 /django/db/backends/sqlite3
parent0f4964535cb81c12303dd103c4bdba4891c99c2c (diff)
Fixed #34138 -- Avoided table rebuild when adding inline m2m fields on SQLite.
Regression in 2f73e5406d54cb8945e187eff302a3a3373350be. Thanks David Wobrock for the report.
Diffstat (limited to 'django/db/backends/sqlite3')
-rw-r--r--django/db/backends/sqlite3/schema.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/django/db/backends/sqlite3/schema.py b/django/db/backends/sqlite3/schema.py
index 6c106ae868..88fa466f79 100644
--- a/django/db/backends/sqlite3/schema.py
+++ b/django/db/backends/sqlite3/schema.py
@@ -379,7 +379,10 @@ class DatabaseSchemaEditor(BaseDatabaseSchemaEditor):
def add_field(self, model, field):
"""Create a field on a model."""
- if (
+ # Special-case implicit M2M tables.
+ if field.many_to_many and field.remote_field.through._meta.auto_created:
+ self.create_model(field.remote_field.through)
+ elif (
# Primary keys and unique fields are not supported in ALTER TABLE
# ADD COLUMN.
field.primary_key