#ruby でdatetime objectを #sort する


ascending(:昇順 <=> decending: 降順)に日程を並び替えたいときには、
sortメソッドをしたhash/ arrayに対して用います。

という書き方もあるみたいですが、
後者が微妙なので今回はsortで。

hash = {

user1: { name: ‘Baz’, date: Time.current },

user2: { name: ‘Bar’, date: Time.current – 1.month },

user3: { name: ‘Foo’, date: Time.current – 2.months },

}

hash.sort { |x, y| x.last[:date] <=> y.last[:date] }

via ruby on rails – Sort hashmap of arrays by datetime from array – Stack Overflow.
のように書きます。


Leave a Reply

Your email address will not be published. Required fields are marked *