2011-10-24 121 views
2

假設我們有我們的控制器中的某個地方有@posts = Post.published.per(10).page(params[:page])。稍後我們需要更新所有發佈的帖子(Post.published)。有沒有辦法從ActiveRelation對象中移除分頁?

應該怎麼去除分頁?

@posts.limit(false).offset(false)似乎在做的伎倆,但我認爲應該有一些其他方式,更高層次的方式(如@posts.without_pagination)。

回答

5

由於kaminari提供了page方法,我不確定kaminari是否也提供類似without_pagination的東西。

但如果你喜歡,你總是可以做到這一點:

class Post < ActiveRecord::Base 
    def self.without_pagination 
    self.limit(false).offset(false) 
    end 
end 

,或者你可以提取方法出一個模塊,包括模塊插入的ActiveRecord :: Base的讓每一個模型的方法。

相關問題