bra*_*ing 6 pagination ruby-on-rails cancan
我想用cancan进行分页但是如何将它与诸如will_paginate之类的宝石进行整合并不明显.
理想情况下,cancan的load_resource将委托给will_paginate并添加额外条件.例如在cancan中我已经声明了访客用户
can :read, Post, :published => true
Run Code Online (Sandbox Code Playgroud)
这由load_resource自动处理.但是,我想在所有这些结果中使用will_paginate页面.
有任何想法吗.
问候
布拉德
bra*_*ing 10
这与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
Run Code Online (Sandbox Code Playgroud)
请注意,kaminari可以与新的rails3 ActiveRelation框架一起正常工作,因此可以将方法链接在一起以构建范围.而CanCan也是ActiveRelation友好的,他们俩只是联系在一起.
你也可以这样做:
class PostsController
def index
@posts = @posts.page(params[:page])
...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1311 次 |
| 最近记录: |