【问题标题】:RoR: Search Logic, How do I use OR with two different values on the same field?RoR:搜索逻辑,如何在同一字段上使用 OR 和两个不同的值?
【发布时间】:2011-08-01 13:45:40
【问题描述】:

我想做类似的事情: @search(some_condition 或 some_other_condition)

这就是互联网所说的使用方式 OR http://www.binarylogic.com/2009/08/26/using-searchlogic-to-combine-named-scopes-with-or/

不幸的是,它只对两个字段使用相同的值。

那么.. 有没有办法进行@search.(some_field == value OR other_field == other_value) ?

【问题讨论】:

    标签: ruby-on-rails searchlogic


    【解决方案1】:

    不要对 or 部分使用搜索逻辑,只需使用 ruby​​。

    result = @search.first_name_like('The') || @search.last_name_like('LindyHop')
    

    你为什么不能这样做,我不理解有什么原因吗?

    【讨论】:

    • 是的,因为我也在使用搜索逻辑进行分页(w/will_paginate)。例如:@people = @search.paginate(:page => params[:page], :per_page => 15)
    • 你不能在我建议的答案中对result 进行分页吗?我不记得 will_paginate 是如何工作的。
    • 您更新了答案,或者它看起来与我上次看到的不同。但是做|| SearchLogic 对象应该可以工作。
    猜你喜欢
    • 1970-01-01
    • 2022-11-27
    • 1970-01-01
    • 1970-01-01
    • 2020-12-22
    • 2014-11-08
    • 2011-08-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多