mirror of
https://github.com/ansible/awx.git
synced 2026-05-19 14:57:39 -02:30
AC-1040 Fix filtering to work again with __regex suffix.
This commit is contained in:
@@ -106,19 +106,18 @@ class FieldLookupBackend(BaseFilterBackend):
|
|||||||
|
|
||||||
def value_to_python(self, model, lookup, value):
|
def value_to_python(self, model, lookup, value):
|
||||||
field, new_lookup = self.get_field_from_lookup(model, lookup)
|
field, new_lookup = self.get_field_from_lookup(model, lookup)
|
||||||
if lookup.endswith('__isnull'):
|
if new_lookup.endswith('__isnull'):
|
||||||
value = self.to_python_boolean(value)
|
value = self.to_python_boolean(value)
|
||||||
elif lookup.endswith('__in'):
|
elif new_lookup.endswith('__in'):
|
||||||
items = []
|
items = []
|
||||||
for item in value.split(','):
|
for item in value.split(','):
|
||||||
items.append(self.value_to_python_for_field(field, item))
|
items.append(self.value_to_python_for_field(field, item))
|
||||||
value = items
|
value = items
|
||||||
elif lookup.endswith('__regex') or lookup.endswith('__iregex'):
|
elif new_lookup.endswith('__regex') or new_lookup.endswith('__iregex'):
|
||||||
try:
|
try:
|
||||||
re.compile(value)
|
re.compile(value)
|
||||||
except re.error, e:
|
except re.error, e:
|
||||||
raise ValueError(e.args[0])
|
raise ValueError(e.args[0])
|
||||||
return value
|
|
||||||
else:
|
else:
|
||||||
value = self.value_to_python_for_field(field, value)
|
value = self.value_to_python_for_field(field, value)
|
||||||
return value, new_lookup
|
return value, new_lookup
|
||||||
|
|||||||
Reference in New Issue
Block a user