わかりました、最初にすべての犯罪のリストを取得する必要があります。犯罪ヘッダーによって構造化されていません。
crimeheaders
これを行う 1 つの方法は、次の関係を通じて、カテゴリ レベルで犯罪への関係を追加することです。
class Category
has_many :crimeheaders
has_many :crimes, through: :crimeheaders # this is what you add
...
end
これを取得すると、カテゴリ内のすべての犯罪を 10 のバッチでループできます。
<% category.crimes.each_slice(10) do | batch | %>
<ul>
<% batch.each do |crime| %>
<li><%= crime.name %></li>
<% end %>
</ul>
<% end %>
これにより、カテゴリのすべての犯罪が取得され、一度に 10 のスライスがリストに表示されます。
賢くしたい場合は、実際にデータベースから 10 個のバッチで取得できます。おそらくそれだけの価値はありませんが、アイデアは次のとおりです。
<% Crime.where(category_id: 123).find_in_batches( batch_size: 10 ) do | batch | %>
<ul>
<% batch.each do |crime| %>
<li><%= crime.name %></li>
<% end %>
</ul>
<% end %>