何を試みましたか?#each
この場合はあまり良い使い方ではありません。次のように、3 つの異なるループに分割することができます。
<% @cms_site.pages.root.children.published[0,5].each do |page| %>
<%= link_to page.label, page.full_path %>
<% end %>
<% @cms_site.pages.root.children.published[6,8].each do |page| %>
<%= link_to page.label, page.full_path %>
<% end %>
<% @cms_site.pages.root.children.published[9,12].each do |page| %>
<%= link_to page.label, page.full_path %>
<% end %>
編集
論理的な問題があるようです。少なくとも最初に試してみることをお勧めします。
そこのコードは機能するはずですが、実際には DRY ではなく、イテレータにチャプターを使用するか、別のイテレータ (例: each_with_index
) を使用してブロック内の各インデックスのチェックを処理するヘルパー メソッドに抽出できます。あなたが求めたことを実行する方法はたくさんあります。