我想做类似的事情:
SELECT * FROM USER WHERE NAME LIKE '%Smith%';
我在Arel中的尝试:
# params[:query] = 'Smith'
User.where("name like '%?%'", params[:query]).to_sql
但是,这变为:
SELECT * FROM USER WHERE NAME LIKE '%'Smith'%';
Arel正确包装了查询字符串'Smith',但是因为这是LIKE语句,所以它不起作用。
如何在Arel中进行LIKE查询?
PS奖金-我实际上是在尝试扫描表上的两个字段,包括名称和描述,以查看查询是否匹配。那将如何工作?
1
我更新了竞技场的红利答案。
—
2014年