summaryrefslogtreecommitdiff
path: root/django/db/models/expressions.py
diff options
context:
space:
mode:
Diffstat (limited to 'django/db/models/expressions.py')
-rw-r--r--django/db/models/expressions.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/django/db/models/expressions.py b/django/db/models/expressions.py
index 86a3a92f07..c270ef16c7 100644
--- a/django/db/models/expressions.py
+++ b/django/db/models/expressions.py
@@ -405,6 +405,12 @@ class BaseExpression:
)
return clone
+ def get_refs(self):
+ refs = set()
+ for expr in self.get_source_expressions():
+ refs |= expr.get_refs()
+ return refs
+
def copy(self):
return copy.copy(self)
@@ -1167,6 +1173,9 @@ class Ref(Expression):
# just a reference to the name of `source`.
return self
+ def get_refs(self):
+ return {self.refs}
+
def relabeled_clone(self, relabels):
return self