如何按此哈希数组进行分组(可枚举)[Ruby,Rails]
Posted
技术标签:
【中文标题】如何按此哈希数组进行分组(可枚举)[Ruby,Rails]【英文标题】:How to group_by this array of hashs (Enumerable) [Ruby, Rails] 【发布时间】:2016-07-06 23:02:45 【问题描述】:我有一个具有这种结构的哈希数组(@items):
@项目:
'item' => item, 'stickers' => stickers
...
item
是一个 ActiveRecord,其属性是我要分组的属性:csgo_type
。
我的代码:
<% @items.group_by |d| d['item'][:csgo_type] .each do |a| %>
<%= render partial: 'item', locals: a: a %>
<% end %>
但这根本不分组。
我正在寻找这样的结果:
[ :csgo_type => #ActiveRecord(csgo_type 1), :items => [array of some @items of this type] , ... ...]
【问题讨论】:
您找到了解决问题的方法真是太好了……太棒了!在 SO,我们鼓励您回答自己的问题,但最好使用“您的答案”框将其添加到下方,而不是将其编辑到您的问题中。您是否考虑编辑您的问题以删除答案并使用下面的“您的答案”框将其添加回来? 【参考方案1】:解决方案:
<% @items.group_by |d| d['item'].csgo_type .each do |a,b| %>
=== <%= a.name %>
<% b.each do |cada| %>
<%= render partial: 'item', locals: cada: cada, i: 1 %>
<% end %>
<% end %>
【讨论】:
以上是关于如何按此哈希数组进行分组(可枚举)[Ruby,Rails]的主要内容,如果未能解决你的问题,请参考以下文章