def parse(self, data):
"""Parse operator and value from filter's data."""
val = data.get(self.fname, missing)
if not isinstance(val, dict):
val = self.field.deserialize(val)
request.filters[self.fname] = val
return (self.operators['$eq'], val),
ops = ()
request.filters[self.fname] = {}
for op, val in val.items():
if op not in self.operators:
continue
val = self.field.deserialize(val) if op not in self.list_ops else [self.field.deserialize(v) for v in val] # noqa
ops += (self.operators[op], val),
request.filters[self.fname][op] = val
return ops
评论列表
文章目录