paginator
paginateって楽だなと最初は思っていたが、それでは痒いところに手が届かないことに気づく。以下のページを参考にPaginatorを使ってみた。
Paginator (任意のクエリによるページ管理)
http://rails.techno-weenie.net/question/2006/1/10/passing_specific_records_to_the_paginator
あるcontrollerのlistというメソッド。bookはacts_as_taggableなmodel def list per_page = 10 if tag_name = params[:id] books = Tag.find_by_name(tag_name).tagged @book_pages = Paginator.new(self, books.size, per_page, @params['page']) first = @book_pages.current.offset last = [first + per_page, books.size].min @books = Tag.find_by_name(tag_name).tagged[first...last] else @book_pages, @books = paginate :books, :per_page => per_page end end