我发现了几个类似的案例,但没有解决我的问题......
我正在使用gem Kaminari对我的应用程序进行分页。
由于我添加了它,研究失败并重新发出此错误undefined method total_pages' for #<Tuto::ActiveRecord_Relation:0x007fc3b2473d80>
我的 tutos控制器中有一个私有方法来过滤我的 tutos
def filter_tutos
return if params[:query].blank?
@tutos = Tuto.search(params[:query][:keyword]).includes(:user, :category) if params[:query][:keyword].present?
@tutos = Tuto.joins(:user).where('users.nickname LIKE ?', params[:query][:user]) if params[:query][:user].present?
@tutos = Tuto.joins(:category).where('categories.name LIKE ?', params[:query][:category]) if params[:query][:category].present?
end
tutos控制器中的索引方法:
def index
filter_tutos if params[:query].present?
@tutos ||= Tuto.all.page params[:page]
end
在我看来,我有:
.pagination
= paginate @tutos
我在tuto模型中添加了paginates_per 5
答案 0 :(得分:0)
试试这个。 @tutos
不调用分页。如果它是空白,那么所有Tuto对象都是分页的,但不是。
def index
filter_tutos if params[:query].present?
@tutos = @tutos.count > 0 ? @tutos : Tuto.all
@tutos = @tutos.page params[:page]
end