Fixed bug with numeric valuedict keys and BaseDocument._lookup_field().
This commit is contained in:
parent
1978dc80eb
commit
9ed138f896
@ -755,6 +755,9 @@ class BaseDocument(object):
|
|||||||
"""Lookup a field based on its attribute and return a list containing
|
"""Lookup a field based on its attribute and return a list containing
|
||||||
the field's parents and the field.
|
the field's parents and the field.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
from mongoengine.fields import ListField
|
||||||
|
|
||||||
if not isinstance(parts, (list, tuple)):
|
if not isinstance(parts, (list, tuple)):
|
||||||
parts = [parts]
|
parts = [parts]
|
||||||
fields = []
|
fields = []
|
||||||
@ -762,7 +765,7 @@ class BaseDocument(object):
|
|||||||
|
|
||||||
for field_name in parts:
|
for field_name in parts:
|
||||||
# Handle ListField indexing:
|
# Handle ListField indexing:
|
||||||
if field_name.isdigit() and hasattr(field, 'field'):
|
if field_name.isdigit() and isinstance(field, ListField):
|
||||||
new_field = field.field
|
new_field = field.field
|
||||||
fields.append(field_name)
|
fields.append(field_name)
|
||||||
continue
|
continue
|
||||||
|
Loading…
x
Reference in New Issue
Block a user