Skip to content

Commit 72063b6

Browse files
committed
simplifications
1 parent 83e9e2c commit 72063b6

File tree

1 file changed

+4
-22
lines changed

1 file changed

+4
-22
lines changed

django_mongodb_backend/fields/embedded_model.py

Lines changed: 4 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
from django.db.models.lookups import Transform
88

99
from .. import forms
10-
from .json import build_json_mql_path
1110

1211

1312
class EmbeddedModelField(models.Field):
@@ -163,10 +162,6 @@ def get_transform(self, name):
163162
Validate that `name` is either a field of an embedded model or a
164163
lookup on an embedded model's field.
165164
"""
166-
if isinstance(self.ref_field, EmbeddedModelField):
167-
opts = self.ref_field.embedded_model._meta
168-
new_field = opts.get_field(name)
169-
return KeyTransformFactory(name, new_field)
170165
if transform := self.ref_field.get_transform(name):
171166
return transform
172167
suggested_lookups = difflib.get_close_matches(name, self.ref_field.get_lookups())
@@ -181,28 +176,15 @@ def get_transform(self, name):
181176
f"{suggestion}"
182177
)
183178

184-
def preprocess_lhs(self, compiler, connection):
179+
def as_mql(self, compiler, connection):
185180
previous = self
186-
embedded_key_transforms = []
187-
json_key_transforms = []
181+
key_transforms = []
188182
while isinstance(previous, KeyTransform):
189-
if isinstance(previous.ref_field, EmbeddedModelField):
190-
embedded_key_transforms.insert(0, previous.key_name)
191-
else:
192-
json_key_transforms.insert(0, previous.key_name)
183+
key_transforms.insert(0, previous.key_name)
193184
previous = previous.lhs
194185
mql = previous.as_mql(compiler, connection)
195-
# The first json_key_transform is the field name.
196-
embedded_key_transforms.append(json_key_transforms.pop(0))
197-
return mql, embedded_key_transforms, json_key_transforms
198-
199-
def as_mql(self, compiler, connection):
200-
mql, key_transforms, json_key_transforms = self.preprocess_lhs(compiler, connection)
201186
transforms = ".".join(key_transforms)
202-
result = f"{mql}.{transforms}"
203-
if json_key_transforms:
204-
result = build_json_mql_path(result, json_key_transforms)
205-
return result
187+
return f"{mql}.{transforms}"
206188

207189
@property
208190
def output_field(self):

0 commit comments

Comments
 (0)