Hi - I'm trying to group records based on some attribute they or an association of their's have. The simplest example I could think of to drive my point is this: Assume the following model associations (pardon my butchering of rails) - Faculty has_many :courses Course belongs_to :faculty I want to paginate courses based on the name of the faculty they belong to. The paging may look something like this (instead of page numbers): # in the actual view << prev Archeology Botanics ... |Math| ... Zoology next >> # listing all courses of current page I'd appreciate help on how to accomplish that. I know will_paginate does numbering, but I couldn't figure out if it can do the above.
on 2009-03-27 16:41
on 2009-03-31 20:16
Shilo, you might be interested in "group_by": http://weblog.rubyonrails.org/2006/3/1/new-in-rail... 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. HTH! -Danimal P.S. I've used group by with will_paginate and it works just fine On Mar 27, 8:41 am, Shilo A. <email@example.com>