Ruby / Rails只有相邻的数组元素

我有一个完整的对象排序数组,我想按属性分组,但前提是它们在数组中是相邻的。

astart属性排序。

a = [{name: "joe", start: "9am", end: "10am"}, {name: "joe", start: "10am", end: "11am"}, {name: "harry", start: "11am", end: "12pm"}, {name: "harry", start: "12pm", end: "1pm"}, {name: "harry", start: "1pm", end: "2pm"}, {name: "joe", start: "2pm", end: "3pm"}, {name: "joe", start: "3pm", end: "4pm"}]

我想通过name属性对相邻对象进行分组,结果如下所示:

 a = [[{name: "joe", start: "9am", end: "10am"},{name: "joe", start: "10am", end: "11am"}], [{name: "harry", start: "11am", end: "12pm"},{name: "harry", start: "12pm", end: "1pm"},{name: "harry", start: "1pm", end: "2pm"}], [{name: "joe", start: "2pm", end: "3pm"},{name: "joe", start: "3pm", end: "4pm"}]] 

这应该做:

 a.chunk {|hash| hash[:name]}.map(&:last)