【问题标题】:Rails: Form Select From Array/List Instance VariableRails:从数组/列表实例变量中选择表单
【发布时间】:2012-11-08 16:17:01
【问题描述】:

我有一个 Rails 应用程序,在表单中,我有一个表单选择(下拉列表)。 例如,用户可以从 1,2,3,4,5 中进行选择

例如,我将这些值作为实例变量存储在数组中,例如:

@formlist = [1,2,3,4,5]

我怎样才能简单地将数组放入表单选择助手中,而不是单独列出每个项目。目前我的代码是:

<tr>
  <th><%= f.label(:heat_level, "Heat Level") %></th>
  <td><%= f.select(:heat_level,{ 1 => "1", 2 => "2", 3 => "3", 4 => "4", 5 => "5"}) %></td>
</tr>

【问题讨论】:

    标签: ruby-on-rails ruby helpers


    【解决方案1】:

    这应该可行:

    f.select(:heat_level, @formlist.map { |value| [ value, value ] })
    

    一些解释:

    form select 可以处理类似哈希和类似数组的选项列表。 意思是,两者 { 1 =&gt; "1", 2 =&gt; "2", 3 =&gt; "3", 4 =&gt; "4", 5 =&gt; "5"}

    [[1, 1], [2, 2], [3, 3], [4, 4], [5, 5]]

    会起作用。

    @formlist.map { |value| [ value, value ] } 是后者

    【讨论】:

    • 只是想为未来的用户更新,对于浅数组完全不需要映射f.select(:heat_level, @formlist) 会给你完全相同的结果
    猜你喜欢
    • 1970-01-01
    • 2013-01-25
    • 1970-01-01
    • 2013-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多