[英]rails searchlogic plugin search in multiple columns
I have a form to a search engine. 我有一个搜索引擎表格。 I want to search for the searchterm in all fields of a specific model.
我想在特定模型的所有字段中搜索searchterm。
I'm using the searchlogic plugin. 我正在使用searchlogic插件。 It gives me a lot of new finders but i cannot do a OR between two fields.
它给了我很多新的发现者,但是我不能在两个字段之间做“或”运算。
for example: 例如:
How can i do a "SELECT * from my_table WHERE field1 LIKE '%xpto%' OR field2 LIKE '%xpto%' ? 我如何在my_table WHERE field1 LIKE'%xpto%'或field2 LIKE'%xpto%'中执行“ SELECT *”操作?
Specially in the form parameter that will be passed to my controller, if you know searchlogic you know what i'm speaking about, i'm trying to pass something like: field1_or_field2_like("xpto") but it dont works. 特别是在将传递给我的控制器的形式参数中,如果您知道searchlogic,那么您知道我在说什么,我正尝试传递类似以下内容:field1_or_field2_like(“ xpto”)但它不起作用。 Any idea?
任何想法?
Uhm... I don't think Searchlogic offers such functionality by default. 嗯...我不认为Searchlogic默认提供此类功能。 But why not write the named_scope yourself?
但是,为什么不自己编写named_scope呢?
class MyModel
named_scope :field1_or_field2_like lambda { |*args| {:conditions => ["field1 LIKE '%?%' OR field2 LIKE '%?%'", args.first, args.first]} }
end
根据插件作者的帖子 ,虽然Jongsma指出您可以使用自己的named_scope实现它,但并不打算为此提供支持。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.