ruby-on-rails - 如何按此哈希数组分组(可枚举)[Ruby、Rails]

标签 ruby-on-rails ruby hash group-by enumerable

我有一个具有这种结构的哈希数组 (@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 => [这种类型的一些@items 的数组] }, {...} ...]

最佳答案

解决方法:

<% @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-on-rails - 如何按此哈希数组分组(可枚举)[Ruby、Rails],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36114070/

相关文章:

ruby - 嵌套 Ruby 哈希

ruby-on-rails - Rails Webpacker 图像不会加载,除非通过导入手动定义

ruby-on-rails - Rspec:如何修复所需的编码格式版本 4.8; 34.92 给出的错误

ruby-on-rails - Heroku toolbelt 更新失败

ruby - OS X 10.9 上 pg (0.16.0) 的捆绑安装错误

ruby - Rspec 无方法错误

ruby-on-rails - 在 Ruby on Rails 中为子域定义默认路由

ruby-on-rails - 回调是如何调用的?

ruby - 将哈希数组转换为哈希哈希,由哈希的属性索引

ruby - hash值与 `<<`算子的交互