带有活动记录查询界面的模糊搜索 [英] fuzzy search with active record query interface
本文介绍了带有活动记录查询界面的模糊搜索的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在我的 rails 应用程序中有一个模糊搜索,我想要的 sql 是这样的:
I have a fuzzy search in my rails app, which sql what I want is this:
select * from `user` where name like '%abc%'
我试过这样做:
name = 'abc'
User.where("name like '%?%'", name)
失败,在控制台中记录:
It failed, in console it logged:
select * from `user` where name like '%'abc'%'
我终于试过了
name = 'abc'
User.where("name like ?", '%' + name + '%')
它奏效了.
但我认为它不喜欢 rails 方式,有没有更好的方法来做到这一点?
But I think it doesn't like rails way, is there any better way to do that?
推荐答案
User.where("name REGEXP ?", 'regex_str')
和 regex_str 应该是 MySQL 正则表达式字符串
and regex_str should be MySQL regex string
试试这个..
这篇关于带有活动记录查询界面的模糊搜索的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文