2011-08-27 60 views
0

在雷,這個工程:雷分頁範圍問題

<%= paginate @posts %> 

但如果我這樣做:

<%= paginate @user.posts %> 

我得到

undefined method `current_page' for #<Class:0x58378e0>  

我該如何解決這個問題?我聽說inherited_resources有幫助,但我不知道如何使用它來修復這個bug。

回答

4

因爲在第一個版本@posts可能是運行像

@posts = Post.page(2).per(50) 

的結果,所以雷返回喜歡的對象數組,paginate helper方法的期望。

當你直接調用@user.posts你實際上只是加載一個普通的舊ActiveRecord關聯。

簡短的回答是,你需要讓雷與paginate helper方法

+0

我有一個noob問題使用產生你其實都是變量,我將如何設置它,這樣@posts由過濾用戶名?類似於: posts = Post.find(user).page(params [:page])。per(5) – Jon

+0

nvm,我修正了它:@posts = @ user_on_page.posts.page(params [:頁])。每(5) – Jon