1414from django_mongodb_backend .fields import ArrayField
1515
1616from .query_utils import process_rhs
17- from .utils import get_column_path
17+ from .utils import get_field
1818
1919MONGO_INDEX_OPERATORS = {
2020 "exact" : "$eq" ,
@@ -63,7 +63,7 @@ def get_pymongo_index_model(self, model, schema_editor, field=None, unique=False
6363 filter_expression [column ].update ({"$type" : field .db_type (schema_editor .connection )})
6464 else :
6565 for field_name , _ in self .fields_orders :
66- field_ = get_column_path (model , field_name )
66+ field_ = get_field (model , field_name )
6767 filter_expression [field_ .column ].update (
6868 {"$type" : field_ .db_type (schema_editor .connection )}
6969 )
@@ -76,7 +76,7 @@ def get_pymongo_index_model(self, model, schema_editor, field=None, unique=False
7676 # order is "" if ASCENDING or "DESC" if DESCENDING (see
7777 # django.db.models.indexes.Index.fields_orders).
7878 (
79- column_prefix + get_column_path (model , field_name ).column ,
79+ column_prefix + get_field (model , field_name ).column ,
8080 ASCENDING if order == "" else DESCENDING ,
8181 )
8282 for field_name , order in self .fields_orders
@@ -156,7 +156,7 @@ def get_pymongo_index_model(
156156 for field_name , _ in self .fields_orders :
157157 field = model ._meta .get_field (field_name )
158158 type_ = self .search_index_data_types (field .db_type (schema_editor .connection ))
159- field_path = column_prefix + get_column_path (model , field_name ).column
159+ field_path = column_prefix + get_field (model , field_name ).column
160160 fields [field_path ] = {"type" : type_ }
161161 return SearchIndexModel (
162162 definition = {"mappings" : {"dynamic" : False , "fields" : fields }}, name = self .name
@@ -266,7 +266,7 @@ def get_pymongo_index_model(
266266 fields = []
267267 for field_name , _ in self .fields_orders :
268268 field_ = model ._meta .get_field (field_name )
269- field_path = column_prefix + get_column_path (model , field_name ).column
269+ field_path = column_prefix + get_field (model , field_name ).column
270270 mappings = {"path" : field_path }
271271 if isinstance (field_ , ArrayField ):
272272 mappings .update (
@@ -291,9 +291,7 @@ def set_name_with_model(self, model):
291291 fit its size by truncating the excess length.
292292 """
293293 _ , table_name = split_identifier (model ._meta .db_table )
294- column_names = [
295- get_column_path (model , field_name ).column for field_name , order in self .fields_orders
296- ]
294+ column_names = [get_field (model , field_name ).column for field_name , order in self .fields_orders ]
297295 column_names_with_order = [
298296 (f"-{ column_name } " if order else column_name )
299297 for column_name , (field_name , order ) in zip (column_names , self .fields_orders , strict = False )
0 commit comments