0

私の Role コレクションにはたくさんの名前があります。ここでは、Role コレクションからすべての名前を取得したいと考えています。

 <% @all= Role.all %>
    <% @all.each do |all|%>
    <%= all.name%>
    <% end %>

これにより、Admin Ram Manager Prem の形式が得られますが、["Admin", "Ram", "Manager", "Prem"] で出力したい

4

2 に答える 2

1
<%= Role.all.collect(&:name) %>
于 2012-08-16T04:16:21.713 に答える
1

あなたはこれを試すことができます...

[<%= '"' + @roles.collect {|r| r.name}.join('", "') + '"' %>]

そして、コントローラーに @roles を割り当てます...

このようにすると、「何をロールとして選択するか」と「どのようにロールを表示するか」が分離され、テストが容易になります。

また、改行がないようにする必要がある場合は、css の空白を nowrap に設定します(nbsp を使用すると、処理が少し扱いに​​くくなります)。

于 2012-08-16T04:09:37.213 に答える