feat: 筛选支持in查询
This commit is contained in:
@@ -201,8 +201,15 @@ def create_model_service(
|
||||
self.check_invalid_keys(query_param.filters)
|
||||
# 为每个过滤条件添加WHERE子句(字段=值)
|
||||
for key, value in query_param.filters.items():
|
||||
query = query.where(getattr(Cls, key) == value)
|
||||
count_query = count_query.where(getattr(Cls, key) == value)
|
||||
# 判断value是否为列表或元组类型
|
||||
if isinstance(value, (list, tuple)):
|
||||
# 如果是数组,使用in查询
|
||||
query = query.where(getattr(Cls, key).in_(value))
|
||||
count_query = count_query.where(getattr(Cls, key).in_(value))
|
||||
else:
|
||||
# 如果不是数组,使用等于查询
|
||||
query = query.where(getattr(Cls, key) == value)
|
||||
count_query = count_query.where(getattr(Cls, key) == value)
|
||||
|
||||
if query_param.sort_field:
|
||||
# 为排序字段添加ORDER BY子句
|
||||
|
||||
Reference in New Issue
Block a user