Skip to content

Commit 90c6b8c

Browse files
committed
Fix unintended overwrite of column.target.
1 parent d590103 commit 90c6b8c

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

django_mongodb_backend/query.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ def extra_where(self, compiler, connection): # noqa: ARG001
126126
def join(self, compiler, connection, pushed_expressions=None):
127127
def _get_reroot_replacements(expressions):
128128
if not expressions:
129-
return []
129+
return None
130130
columns = []
131131
for expr in expressions:
132132
# Determine whether the column needs to be transformed or rerouted
@@ -146,7 +146,9 @@ def _get_reroot_replacements(expressions):
146146
# based on their rerouted positions in the join pipeline.
147147
replacements = {}
148148
for col, parent_pos in columns:
149-
column_target = Col(compiler.collection_name, col.target, col.output_field)
149+
target = col.target.clone()
150+
target.remote_field = col.target.remote_field
151+
column_target = Col(compiler.collection_name, target)
150152
if parent_pos is not None:
151153
target_col = f"${parent_template}{parent_pos}"
152154
column_target.target.db_column = target_col

0 commit comments

Comments
 (0)