【问题标题】:How to combine OR logic with named_scope?如何将 OR 逻辑与 named_scope 结合起来?
【发布时间】:2011-06-19 06:15:22
【问题描述】:

有没有办法把几个named_scope组合起来,但把它们用作OR逻辑?

named_scope :a, { :conditions => ["posts.type_post == #{PERSONAL}"] }
named_scope :b, { :conditions => ["posts.type_post == #{PUBLIC}"] }

有没有办法使用这些 a 和 b 让我得到 posts.type_post == PERSONALposts.type_post == PUBLIC

谢谢

【问题讨论】:

    标签: ruby-on-rails scope named-scope


    【解决方案1】:

    我认为您需要结合条件创建第三个作用域:

    named_scope :a_or_b, { :conditions => ["posts.type_post in (#{PUBLIC}, #{PERSONAL})"] }
    

    【讨论】:

    • 哦,但是 a 和 b 实际上有点复杂,所以手动对它们进行 OR-ing 是可行的,但我有点不愿意这样做......
    猜你喜欢
    • 2011-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-11
    相关资源
    最近更新 更多