【问题标题】:Rails get list of types (enum)Rails 获取类型列表(枚举)
【发布时间】:2013-09-29 18:03:20
【问题描述】:

在我的模型中,我有这部分代码用于声明硬编码类型

TYPES = { administrator: 1, system: 2, station: 3, guest: 4 }

    def type
      TYPES.key(read_attribute(:type_id))
    end

    def type=(s)
      write_attribute(:type_id, TYPES[s])
    end

我需要在视图中获取这 4 种类型以将它们显示为选择框 我怎样才能得到它们

类似的东西

Admin.TYPES.each do |type|
"<option id="<%=????%>"><%=type.text%></option>"
end

【问题讨论】:

    标签: ruby-on-rails enums controller


    【解决方案1】:

    如果你需要选择标签,你可以使用这个。
    &lt;%= select_tag('type_options',options_for_select(TYPES)) %&gt;

    rails 中的 HTML 助手。

    【讨论】:

      【解决方案2】:

      这样的事情怎么样:

      Admin::TYPES.each do |key, value|
        "<option id='#{value}'>#{key}</option>"
      end
      

      它应该看起来像:

      <option id='1'>administrator</option>
      <option id='2'>system</option>
      <option id='3'>station</option>
      <option id='4'>guest</option>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-01-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-12-20
        • 2012-03-19
        相关资源
        最近更新 更多