我从我的 Rails 应用程序中获取对象列表,并像往常一样使用 will_paginate 进行分页,然后我有一个小方法用于将搜索的详细信息保存到数据库中:
per_page=10
session[:search_params] = params[:search_people]
@documents = Person.search_people(params[:search_people], params[:page], per_page)
Search.create(:user_id => (!current_user ? 0 : current_user.id),
:search_type => "Person",
:firstname => params[:search_people][:first_name],
:lastname => params[:search_people][:last_name],
:results => @documents.count )
问题是,搜索结果的数量 (@douments.count) 总是 <= per_page 用于 will_paginate。
我明白为什么会这样,但是有没有办法绕过它而不运行两次查询,一次使用 will_paginate 一次没有?