diff --git a/condition.go b/condition.go index 9b78223..153b9d5 100644 --- a/condition.go +++ b/condition.go @@ -84,9 +84,14 @@ func BuildConditions(ctx context.Context, r *http.Request, query *Query, schemas } //如果是多选的话,直接使用IN操作 columnName := row.Column + "[]" - if qs.Has(columnName) && len(qs[columnName]) > 1 { - query.AndFilterWhere(newConditionWithOperator("IN", row.Column, qs[columnName])) - continue + if qs.Has(columnName) { + if len(qs[columnName]) > 1 { + query.AndFilterWhere(newConditionWithOperator("IN", row.Column, qs[columnName])) + continue + } else if len(qs[columnName]) == 1 { + query.AndFilterWhere(newCondition(row.Column, qs[columnName][0])) + continue + } } formValue = qs.Get(row.Column) switch row.Format {