- expressions = []
- if case_sensitive:
- for column, value in values.items():
- expressions.append(getattr(table.q, column).startswith(value))
- else:
- for column, value in values.items():
- expressions.append(
- func.lower(getattr(table.q, column)).startswith(value.lower()))
- return AND(*expressions)
+ return _search_with_operator(table, case_sensitive, 'startswith', values)