From c00b4dbda2d9217cac205c4ffb3ccc1fa59a28ae Mon Sep 17 00:00:00 2001 From: can Date: Tue, 23 Apr 2019 13:56:05 +0300 Subject: Fixed #29810 -- Fixed crash of select_related() on FilteredRelation with empty result. --- django/db/models/sql/compiler.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'django/db/models/sql') diff --git a/django/db/models/sql/compiler.py b/django/db/models/sql/compiler.py index 3d133cb672..7649c39262 100644 --- a/django/db/models/sql/compiler.py +++ b/django/db/models/sql/compiler.py @@ -892,7 +892,9 @@ class SQLCompiler: from_parent = issubclass(model, opts.model) and model is not opts.model def local_setter(obj, from_obj): - f.remote_field.set_cached_value(from_obj, obj) + # Set a reverse fk object when relation is non-empty. + if from_obj: + f.remote_field.set_cached_value(from_obj, obj) def remote_setter(obj, from_obj): setattr(from_obj, name, obj) -- cgit v1.3