Searchlogic OR 条件导致未定义的方法
我确信我忽略了一些东西,因为这是我第一次使用 Searchlogic。
每当我在控制器中使用像 Listing.city_like_or_state_like(params[:search])
这样的语句时,Rails 都会返回“未定义方法”错误。我正在尝试搜索同一模型中的 2 个字段。
但是,如果我使用 Listing.city_like(params[:search]) 一切都很好。
我在这里错过了什么吗?我认为 OR 条件可以与 Searchlogic 链接在一起。如何实现 OR 语句?
I'm sure that I'm overlooking something since this is my first time using Searchlogic.
Whenever I use a statement like Listing.city_like_or_state_like(params[:search])
in my controller, Rails returns an "Undefined Method" error. I'm trying to search 2 fields within the same model.
However, if I use Listing.city_like(params[:search])
everything is totally fine.
Am I missing something here? I thought OR conditions could be chained together with Searchlogic. How can I implement an OR statement?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Searchlogic 每次调用仅支持一名“操作员”。所以你想做的是
Searchlogic only supports one "operator" per call. So what you want to do is
我认为你可以使用named_scopes并将参数直接传递给SearchLogic
models/listing.rb
controllers/listing_controller.rb
不过,我对aNoble的答案投了赞成票:D
I think you can use named_scopes and pass the params straight to SearchLogic
models/listing.rb
controllers/listing_controller.rb
I'm up-voting aNoble's answer though :D