orm wrapper: fix querying stuff by attname

This commit is contained in:
Laura Klünder 2017-12-19 01:32:00 +01:00
parent 791ff255d1
commit 0a0bf9972a

View file

@ -443,6 +443,12 @@ class BaseQueryWrapper(BaseWrapper):
if field.many_to_one:
rel_model = field.related_model
if field_name == field.attname:
# turn 'foreign_obj_id' into 'foreign_obj__pk' for later
segments.insert(0, 'pk')
filter_name = field.name + '__' + '__'.join(segments)
q = Q(**{filter_name: filter_value})
if not segments:
# turn 'foreign_obj' into 'foreign_obj__pk' for later
filter_name = field_name + '__pk'