【问题标题】:How can I check multiple value in Model enum如何检查模型枚举中的多个值
【发布时间】:2016-08-24 06:08:13
【问题描述】:

我想检查实例的状态是否有两个以上的值

这是使用 Rails 枚举的一些模型

class Product < ActiveRecord::Base
  enum status: [:status1, :status2, :status3]
end

我可以只检查一个实例的状态来使用 rails 枚举

Product.first.status1?

如果我想像这样检查多个状态

Product.first.status1? || Product.first.status2?

我怎样才能检查枚举值之类的东西

Product.first.status?(:status1, :status2)`# this does not work

有什么方法吗?

【问题讨论】:

    标签: ruby-on-rails enums


    【解决方案1】:

    简单的答案是:

    [:status1, :status2].include?(Product.first.status)
    

    【讨论】:

      【解决方案2】:

      另类

      (Product.first.status).in?[:status1, :status2]
      
      

      但是include? 更快

      【讨论】:

        猜你喜欢
        • 2015-01-26
        • 1970-01-01
        • 1970-01-01
        • 2015-02-12
        • 2013-03-20
        • 1970-01-01
        • 2013-06-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多