首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对数组进行排序和分组,所有项的散列都出现在末尾。

对数组进行排序和分组,所有项的散列都出现在末尾。
EN

Stack Overflow用户
提问于 2014-12-05 22:23:39
回答 1查看 34关注 0票数 0

我有一张列有传单数据的桌子,按日期在主计长中排序:

代码语言:javascript
复制
@leaflets = Leaflet.order(:date)

然后按查看日期分组(我在互联网上找到了代码)

代码语言:javascript
复制
<%= @leaflets.group_by(&:date).each do |date, leaflets| %>
  <p><%= l(date, :format => '%A, %d %b %Y') %></p> <!-- localized date formatting: weekday, day month year -->


  <table>
    <tr>
      <% leaflets.each do |leaflet| %>

        <td style="border:dotted 1px; padding:5px;">

      <strong><%= leaflet.place %></strong><br/>
      <%= leaflet.description %><br/>
      <%= link_to "Zapisz się", leaflet_path(leaflet) %>
      </td>
      </a>
    <% end %>
    </tr>

  </table>

  <% end %>

所有的操作都很好,但是它会以散列的形式输出所有的项:

代码语言:javascript
复制
{Tue, 11 Nov 2014=>[#<Leaflet id: 14, date: "2014-11-11", place: "Miejsce11-11-A", description: nil, program: nil, modifier: nil, created_at: "2014-12-05 21:58:01", updated_at: "2014-12-05 21:58:01">, #<Leaflet id: 15, date: "2014-11-11", place: "Miejsce11-11-B", description: nil, program: nil, modifier: nil, created_at: "2014-12-05 21:58:04", updated_at: "2014-12-05 21:58:04">, #<Leaflet id: 16, date: "2014-11-11", place: "Miejsce11-11-C", description: nil, program: nil, modifier: nil, created_at: "2014-12-05 21:58:07", updated_at: "2014-12-05 21:58:07">], Mon, 01 Dec 2014=>[#<Leaflet id: 4, date: "2014-12-01", place: "Miejsce1", description: nil, program: nil, modifier: nil, created_at: "2014-12-05 21:56:42", updated_at: "2014-12-05 21:56:42">, #<Leaflet id: 5, date: "2014-12-01", place: "Miejsce2", description: nil, program: nil, modifier: nil, created_at: "2014-12-05 21:56:55", updated_at: "2014-12-05 21:56:55">, #<Leaflet id: 6, date: "2014-12-01", place: "Miejsce3", description: nil, program: nil, modifier: nil, created_at: "2014-12-05 21:57:01", updated_at: "2014-12-05 21:57:01">], Tue, 02 Dec 2014=>[#<Leaflet id: 7, date: "2014-12-02", place: "Miejsce02-A", description: nil, program: nil, modifier: nil, created_at: "2014-12-05 21:57:21", updated_at: "2014-12-05 21:57:21">, #<Leaflet id: 8, date: "2014-12-02", place: "Miejsce02-B", description: nil, program: nil, modifier: nil, created_at: "2014-12-05 21:57:24", updated_at: "2014-12-05 21:57:24">, #<Leaflet id: 9, date: "2014-12-02", place: "Miejsce02-C", description: nil, program: nil, modifier: nil, created_at: "2014-12-05 21:57:28", updated_at: "2014-12-05 21:57:28">], Fri, 05 Dec 2014=>[#<Leaflet id: 10, date: "2014-12-05", place: "Miejsce05-A", description: nil, program: nil, modifier: nil, created_at: "2014-12-05 21:57:40", updated_at: "2014-12-05 21:57:40">, #<Leaflet id: 11, date: "2014-12-05", place: "Miejsce05-B", description: nil, program: nil, modifier: nil, created_at: "2014-12-05 21:57:43", updated_at: "2014-12-05 21:57:43">, #<Leaflet id: 12, date: "2014-12-05", place: "Miejsce05-C", description: nil, program: nil, modifier: nil, created_at: "2014-12-05 21:57:46", updated_at: "2014-12-05 21:57:46">, #<Leaflet id: 13, date: "2014-12-05", place: "Miejsce05-D", description: nil, program: nil, modifier: nil, created_at: "2014-12-05 21:57:48", updated_at: "2014-12-05 21:57:48">]}

你知道怎么回事吗?在Rails中分组是正常行为吗?我怎么能删除这个大哈希呢?截图:http://imgur.com/Nc9sYS7

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-05 22:29:28

只需从以下位置删除=

代码语言:javascript
复制
<%= @leaflets.group_by(&:date).each do |date, leaflets| %>

因此,它的内容如下:

代码语言:javascript
复制
<% @leaflets.group_by(&:date).each do |date, leaflets| %>

=正在输出each调用的结果。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27325643

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档