私の Role コレクションにはたくさんの名前があります。ここでは、Role コレクションからすべての名前を取得したいと考えています。
<% @all= Role.all %>
<% @all.each do |all|%>
<%= all.name%>
<% end %>
これにより、Admin Ram Manager Prem の形式が得られますが、["Admin", "Ram", "Manager", "Prem"] で出力したい
私の Role コレクションにはたくさんの名前があります。ここでは、Role コレクションからすべての名前を取得したいと考えています。
<% @all= Role.all %>
<% @all.each do |all|%>
<%= all.name%>
<% end %>
これにより、Admin Ram Manager Prem の形式が得られますが、["Admin", "Ram", "Manager", "Prem"] で出力したい
<%= Role.all.collect(&:name) %>
あなたはこれを試すことができます...
[<%= '"' + @roles.collect {|r| r.name}.join('", "') + '"' %>]
そして、コントローラーに @roles を割り当てます...
このようにすると、「何をロールとして選択するか」と「どのようにロールを表示するか」が分離され、テストが容易になります。
また、改行がないようにする必要がある場合は、css の空白を nowrap に設定します(nbsp を使用すると、処理が少し扱いにくくなります)。