如何与康康人分页?
我希望用cancan进行分页但是如何将它与诸如will_paginate之类的gem进行整合并不明显。
理想情况下,cancan的load_resource将委托给will_paginate并添加额外的条件。 例如在cancan中我已经声明了访客用户
can :read, Post, :published => true
这由load_resource自动处理。 但是,我想在所有这些结果中使用will_paginate页面。
有任何想法吗。
问候
布拉德
这对kaminari https://github.com/amatsuda/kaminari来说很简单
在我的PostsController中我就是这么做的
before_filter :load_by_pagination, :only => :index def load_by_pagination @posts = Post.accessible_by(current_ability).order("published_date desc").page params[:page] end
请注意,kaminari可以与新的rails3 ActiveRelation框架一起正常工作,因此可以将方法链接在一起以构建范围。 而CanCan也是ActiveRelation友好的,他们俩只是联系在一起。
你也可以这样做:
class PostsController def index @posts = @posts.page(params[:page]) ...