ruby-on-rails - 按年份和月份对 Rails 中的 ruby​​ 数组进行分组

标签 ruby-on-rails ruby

我目前对我的事件进行排序;

@events_by_month = @events.group_by { |x| x.date.month }

这依赖于所有事件都发生在同一年的事实,但我现在也想显示明年的事件。 我希望输出的格式与上述输出的格式相同,但按年份排序,即 这就是我所拥有的;

{3=>[#<Event id: 7032, date: "2014-03-02 00:00:00">, #<Event id: 7033, date: "2015-03-02 00:00:00">]}

这就是我想要的;

{3=>[#<Event id: 7032, date: "2014-03-02 00:00:00">]},{3=> [#<Event id: 7033, date: "2015-03-02 00:00:00">]}

最佳答案

据我了解,您希望按月和年对事件进行分组。 然后使用 @events_by_month = @events.group_by { |x| [x.date.month, x.date.year] } 您将收到

{[3, 2014]=>[#<Event id: 7032, date: "2014-03-02 00:00:00">]},{[3,2015]=> [#<Event id: 7033, date: "2015-03-02 00:00:00">]}

它比示例中的重复键更正确。

关于ruby-on-rails - 按年份和月份对 Rails 中的 ruby​​ 数组进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22132198/

相关文章:

ruby-on-rails - 如何在模块中使用动态选择的类

ruby - 无法使airbrake gem 适应 Sinatra 应用程序

mysql - rails : How can I retrieve values from columns named `id` ?

ruby-on-rails - rails,在设置新对象时传入参数

ruby-on-rails - Rails 3 上的 Postgres 复合类型

ruby-on-rails - 使用 mixins 初始化类变量

ruby-on-rails - ajax 请求后无法显示 Twitter Bootstrap 模式

ruby-on-rails - Ubuntu 上 Rails 设置中的 ActiveRecord::ConnectionNotEstablished 错误

ruby-on-rails - 在 Minitest 中测试更新操作

ruby-on-rails - 如何插入可预测的 ID 以使用 ActiveRecord 进行测试