Ruby / Rails / HTML - Создать новую строку таблицы после X ячеек из цикла - PullRequest
0 голосов
/ 14 марта 2011

Я использую Rails для отображения набора данных. Проблема в том, что данные настолько велики, что я обычно не делаю обычно для каждого цикла, так как я создаю этот безумно длинный список.

Мое решение было бы создать некую форму таблицы, в которой после 10 записей создается новая ячейка, а после 5 ячеек - новая строка. Мне не очень удобно с петлями в рельсах, поэтому я решил выбросить вопрос.

Прямо сейчас у меня есть ...

<strong> Person Data Set: </strong><br />
<% for person in @persons %>
   <%= interest.name %> <br />
<% end %>

Так я могу создать цикл, похожий на этот?

  <strong> Person Data Set: </strong><br />
  <table>
  <tr>
  *****for each 5 cells???? *****
  <td>
  *****For each 10 records?? ***
  </td>
  </tr>
  </table>

Кто-нибудь сталкивался с такой проблемой раньше?

1 Ответ

3 голосов
/ 15 марта 2011

Существует метод each_slice. С HAML (мне действительно не нравится ERB, но идея та же самая):

%strong
  Person Data Set:
%br
%table
  - @persons.each_slice(10) do |ten_people| 
    %tr
      - ten_people.each_slice(5) do |five_people|
        %td
          - five_people.each do |person|
            %p= person.name 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...