has_many :through でひっぱってくる数を指定する
何がどうなっているのか、おいらも分からないのだけどYO、
ここを参考にしてmodelにぴゅっと加えてみたら、
普段際限なく情報拾ってくるhas_many throughが 指定数だけ取れるようになったんだYO。
class User < ActiveRecord::Base has_many :groups, :through=>:members, :select => 'DISTINCT *' do def limit(number) find :all, :limit=>number end end end
んで、
User.find_by_name(hoge).groups #=> group全件取得 User.find_by_name(hoge).groups.limit(3) #=> group3件取得 User.find_by_name(hoge).groups.limit(10) #=> group10件取得
もっといろいろ応用できそうだぜ。。。