Направляющие, которые вставляет каждый цикл, отмечают каждые 6 объектов?

У меня есть X количества объектов изображения, которые я должен циклично выполнить через в представлении и хотеть создать новое отделение каждые 6 объектов или так (для галереи).

Я посмотрел на цикл, но это, кажется, изменяет любую запись. Кто-либо знает о способе ввести код в представление каждые 6 раз?

Я мог, вероятно, сделать это с вложенными циклами, но я отчасти озадачен на этом.

32
задан Arslan Ali 29 June 2015 в 06:54
поделиться

2 ответа

Вы можете использовать Enumerable#each_slice в сочетании с #each, чтобы избежать встроенных вычислений. each_slice разбивает массив на куски по n, в данном случае 6.

<% @images.each_slice(6) do |slice| -%>
  <div class="gallery">
    <% slice.each do |image| -%>
      <%= image_tag(image.url, :alt => image.alt) %>
    <% end -%>
  </div>
<% end -%>
103
ответ дан 27 November 2019 в 19:46
поделиться

Это вопрос Ruby. Вы можете объединить это с тем, что пытается сделать ваш взгляд.

@list.each_with_index do |item, idx|
  if((idx + 1) % 6 == 0)
    # Poop out the div
  end
  # Do whatever needs to be done on each iteration here.
end
14
ответ дан 27 November 2019 в 19:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: