如何在 Rails 中查找类中的所有枚举字段

gil*_*ien 1 activerecord ruby-on-rails

今天,我们可以通过执行以下操作来获取 lambda 类的字段类型:User.columns.map { |c| [c.name, c.type]}

如果字段是枚举,它将返回类型integer。无论如何,是否可以找到哪些字段被设置为活动记录类中的枚举?

ray*_*ray 7

您可以将其获取为(由 提供ActiveRecord::Enum),

User.defined_enums.keys
Run Code Online (Sandbox Code Playgroud)