Таблицы данных HTML в Rails 3 - PullRequest
0 голосов
/ 09 мая 2011

У меня есть Message модель с датой создания. Как я могу сделать так, чтобы я мог отображать дату по горизонтали и другие атрибуты по вертикали.

Так было бы что-то вроде этого:

Date         1/1/11           2/1/11            3/1/11
Message      message1         message2          message3
Attr 1       attr1 val        ....              ...
Attr 2       attr2 val        ....              ......

Есть ли плагин / гем, который я мог бы использовать в Rails, или я должен использовать некоторую библиотеку JavaScript для этого?

1 Ответ

4 голосов
/ 09 мая 2011

в вашем контроллере готовят данные

@messages = Message.select(:created_at, :message, :attr1, :attr2 ...)
@turned_messages = @messages.all.inject({}){ |h, c| c.attributes.each{ |k,v| h[k] ||= []; h[k] << v }; h }

Затем в представлениях:

<table>
  <% @turned_messages.each do |k, values| %>
    <tr>
      <td><%= k %></td>
      <% values.each do |v| %>
        <td><%= v %></td>
      <% end %>
    </tr>
  <% end %>
</table>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...