summaryrefslogtreecommitdiff
path: root/django/db/models/query_utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'django/db/models/query_utils.py')
-rw-r--r--django/db/models/query_utils.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/django/db/models/query_utils.py b/django/db/models/query_utils.py
index 6e82edb6e7..f4215ed48e 100644
--- a/django/db/models/query_utils.py
+++ b/django/db/models/query_utils.py
@@ -259,7 +259,7 @@ class RegisterLookupMixin:
cls._clear_cached_lookups()
-def select_related_descend(field, restricted, requested, load_fields, reverse=False):
+def select_related_descend(field, restricted, requested, select_mask, reverse=False):
"""
Return True if this field should be used to descend deeper for
select_related() purposes. Used by both the query construction code
@@ -271,7 +271,7 @@ def select_related_descend(field, restricted, requested, load_fields, reverse=Fa
* restricted - a boolean field, indicating if the field list has been
manually restricted using a requested clause)
* requested - The select_related() dictionary.
- * load_fields - the set of fields to be loaded on this model
+ * select_mask - the dictionary of selected fields.
* reverse - boolean, True if we are checking a reverse select related
"""
if not field.remote_field:
@@ -287,9 +287,9 @@ def select_related_descend(field, restricted, requested, load_fields, reverse=Fa
return False
if (
restricted
- and load_fields
+ and select_mask
and field.name in requested
- and field.attname not in load_fields
+ and field not in select_mask
):
raise FieldError(
f"Field {field.model._meta.object_name}.{field.name} cannot be both "