summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
authorTim Graham <timograham@gmail.com>2017-05-03 10:39:54 -0400
committerTim Graham <timograham@gmail.com>2017-05-03 12:31:18 -0400
commitf3217ab59696ea095a42c7fb4d98f21bb000ca8e (patch)
treefc6771feef31818ec3fed01bed5e88361a47335c /django
parent008ba77dfd23576a8080f05e3c45a19da73b20ba (diff)
[1.11.x] Fixed #28166 -- Fixed Model._state.db on MTI parent model after saving child model.
Regression in 38575b007a722d6af510ea46d46393a4cda9ca29. Backport of 584e10c76edcd3a33765a52c5cde0096a3ce7dbc from master
Diffstat (limited to 'django')
-rw-r--r--django/db/models/fields/related_descriptors.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/django/db/models/fields/related_descriptors.py b/django/db/models/fields/related_descriptors.py
index af6fdc3e25..7cb6448bd7 100644
--- a/django/db/models/fields/related_descriptors.py
+++ b/django/db/models/fields/related_descriptors.py
@@ -288,7 +288,9 @@ class ForwardOneToOneDescriptor(ForwardManyToOneDescriptor):
# on the related model for every deferred field.
if not any(field in fields for field in deferred):
kwargs = {field: getattr(instance, field) for field in fields}
- return rel_model(**kwargs)
+ obj = rel_model(**kwargs)
+ obj._state.db = instance._state.db
+ return obj
return super(ForwardOneToOneDescriptor, self).get_object(instance)