迭代资源列的最佳方法是什么?

时间:2015-03-29 22:43:03

标签: ruby-on-rails erb

我制作一个列表来显示按类别过滤的输入。 我想要6个输入来显示类别及其图标。

我有一个名为Pin的表格,其中有:category列。

我只有6个固定类别,所以我想最好的方法是将它们放在硬编码的实例变量中,以及每个类别的图标?

@categories = ["Lamparas","Mesas","Camas","Accesorios","Textil","Sofas"]
@categories_icons = ["svg23","svg24","svg25","svg26","svg27","svg29"]

在我看来,我正在做:

<% @categories.each do |category| %>
    <li class="product-list-item">
        <div class="product-tile">
            HERE GOES THE ICON
        </div>
        <%= f.radio_button :category, html_input: {type: :radio, name: "#{category}", value: "#{category}"} %>
    </li>
<% end %>

问题是,在视图上绘制图标时如何将我的图标与类别匹配?

1 个答案:

答案 0 :(得分:1)

您对此有何看法?

categories = ["Lamparas","Mesas","Camas","Accesorios","Textil","Sofas"]
icons = ["svg23","svg24","svg25","svg26","svg27","svg29"]
@categories_icons = Hash[[categories,icons].transpose]

他们可以将HERE GOES THE ICON替换为:

@categories_icons[category]