如何根据rails中的日期显示列表?

时间:2015-02-22 08:47:19

标签: ruby-on-rails ruby ruby-on-rails-4

我正在尝试构建一个真实的简单事件列表应用程序,该应用程序根据日期列出一堆事件。我很新,想知道如何根据日期显示列表或表格?这就是我现在所拥有的。

<thead>
<tr>
  <th>Title</th>
  <th>Description</th>
  <th>Link</th>
  <th>Date</th>
  <th colspan="3"></th>
</tr>
</thead>

<tbody>
<% @events.each do |event| %>
  <tr>
    <td><%= event.title %></td>
    <td><%= event.description %></td>
    <td><%= event.link %></td>
    <td><%= event.date %></td>
    <td><%= link_to 'Show', event %></td>
    <td><%= link_to 'Edit', edit_event_path(event) %></td>
    <td><%= link_to 'Destroy', event, method: :delete, data: { confirm: 'Are you sure?' } %></td>
  </tr>
<% end %>

我希望它以日期格式显示。例如,2月21日之下的所有事件都将显示在该特定标题下。

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以尝试这样的事情:

<% @events.group_by(&:date).each do |date, events| %>
  <tr><td colspan="7"><h1><%= date %></h1></td></tr>
  <% events.each do |event| %>
  <tr>
    <td><%= event.title %></td>
    <td><%= event.description %></td>
    <td><%= event.link %></td>
    <td><%= event.date %></td>
    <td><%= link_to 'Show', event %></td>
    <td><%= link_to 'Edit', edit_event_path(event) %></td>
    <td><%= link_to 'Destroy', event, method: :delete, data: { confirm: 'Are you sure?' } %></td>
  </tr>
  <% end %>
<% end %>