【问题标题】:AND OR filter in Ruby on railsRuby on rails 中的 AND OR 过滤器
【发布时间】:2012-08-11 14:02:16
【问题描述】:

我有一个问题:如何在过滤器参数中编写 2 个条件? :page_path.eql => "/teams/1" or :page_path.eql => 'teams/2'

它适用于一种情况,但不适用于两种情况:(

output = Exits.results(profile, :filters => {:page_path.eql => "/teams/1"})

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3 garb-gem


    【解决方案1】:

    试试这个

    output = Exits.results(profile,:filters =>{:page_path.contains => "^/teams/[1|2]$"})
    

    你也可以试试速记

    output = profile.exits(:filters =>{:page_path.contains => "^/teams/[1|2]$"})
    

    有日期选项

    output = Exits.results(profile, :filters => {:page_path.contains => "^/teams/[1|2]$"},:start_date => Date.new(2012,8,13),:end_date => Date.today)
    

    output = profile.exits(:filters => {:page_path.contains => "^/teams/[1|2]$"},:start_date => Date.new(2012,8,13),:end_date => Date.today)
    

    这对我有用

    使用contains 而不是matches 我认为它不理解正则表达式。

    【讨论】:

    • 这不行!我尝试了output = Exits.results(profile, :filters => {:page_path.matches => "/admin/teams/1", "/admin/teams/23"},:start_date => Date.new(2012,8,13),:end_date => Date.today)``output = Exits.results(profile, :filters => {:page_path.matches => "/admin/teams/#{'1'||'23'}"},:start_date => Date.new(2012,8,13),:end_date => Date.today) ``output = Exits.results(profile, :filters => {:page_path.matches => "/admin/teams/#{'1','2'}"},:start_date => Date.new(2012,8,13),:end_date => Date.today) 和你的想法,但没有任何匹配
    • @TranduyKhoa ,使用包含而不是匹配我认为它不理解正则表达式。检查更新的答案
    • 这个profile.exits(:filters => {:page_path.contains => "/admin/teams/[1|2]"},:start_date => Date.new(2012,8,13),:end_date => Date.today)的输出
    • #<:resultset:0x007f9730512600>page_path="/admin/teams/1 page_path="/admin/teams/1" page_path="/admin/teams/2", date="20120817">, #matches 时,- > 没有结果。我想查询team/1 and /2 only!无论如何,感谢您的帮助:)
    • @TranduyKhoa 我知道你想要什么我已经更新了答案希望对您有所帮助。使用正则表达式“^query$”来限制搜索
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-20
    • 1970-01-01
    • 2016-04-17
    • 2014-12-15
    相关资源
    最近更新 更多