diff options
| -rw-r--r-- | ishtar_common/views_item.py | 9 | 
1 files changed, 3 insertions, 6 deletions
| diff --git a/ishtar_common/views_item.py b/ishtar_common/views_item.py index 88cd70b43..431135e37 100644 --- a/ishtar_common/views_item.py +++ b/ishtar_common/views_item.py @@ -816,18 +816,13 @@ def _manage_hierarchic_fields(dct, and_reqs):                  if val.startswith('"') and val.endswith('"'):                      val = val[1:-1]                  reqs = Q(**{req: val}) -                base_req = req[:]                  for idx in range(HIERARCHIC_LEVELS):                      req = req[:-(len(suffix))] + 'parent__' + suffix                      q = Q(**{req: val})                      reqs |= q -                req = base_req[:] -                for idx in range(HIERARCHIC_LEVELS): -                    req = req[:-(len(suffix))] + 'children__' + suffix -                    q = Q(**{req: val}) -                    reqs |= q                  and_reqs.append(reqs) +                # TODO: improve query with "IN ()"?                  continue              if req.endswith('town__pk') or req.endswith('towns__pk') \ @@ -855,6 +850,7 @@ def _manage_hierarchic_fields(dct, and_reqs):                      q = Q(**{req: val})                      reqs |= q                  and_reqs.append(reqs) +                # TODO: improve query with "IN ()"?                  continue              for k_hr in HIERARCHIC_FIELDS: @@ -908,6 +904,7 @@ def _manage_hierarchic_fields(dct, and_reqs):                              req = req[:-(len(suffix))] + 'parent__' + suffix                              q = Q(**{req: val})                              reqs |= q +                    # TODO: improve query with "IN ()"?                      if reqs:                          and_reqs.append(reqs)                      break | 
