一覧表示時にあるモデルの値毎に出力する場所(div)を変えたい場合ってどうすればいいんだろう?
インスタンス変数を分割して渡すのも嬉しくないし。
と思い調べてみるとEnumrable.chunkを使って実現できそうなのでやってみました。
一見分かりにくいのでベストではない気がします。
controller
column_noの値毎にchankを使ってグループ化して
その値をkeyにしたHasnに放り込みます。
@groups = {} Group.all.chunk{|group| group.column_no }.each{ |k,v| @groups[k] = v }
view
<% (1..@sheet.max_column).each do |c| %> <div id="column_<%=c%>" class="column"> <%= render partial: 'shared/group', collection: @groups[c] %> </div> <% end %>