The first example groups by an attribute (in the above case, “day”).
Try it in script/console first to see how the data structure is
returned. It’s a nested array of key, values where the key is the
attribute and the value is an array of records that are in that group.
You can iterate through it with the each call as in that example.
P.S. I’ve used group by with will_paginate and it works just fine