ruby sort_by twice

后端 未结 3 595
忘了有多久
忘了有多久 2020-12-16 01:28

Ruby has a sort_by method on Enumerables. Fantastic! So you can do something like

entries.sort_by { |l| l.project.name }

That would sort

3条回答
  •  小蘑菇
    小蘑菇 (楼主)
    2020-12-16 02:04

    You can use the regular sort method to do it.

    entries.sort do |a, b|
      comp = a.project.name <=> b.project.name
      comp.zero? ? (a.project.time <=> b.project.time) : comp
    end
    

提交回复
热议问题