2013-05-31 135 views
0

我有2個類:PostsComments,其中帖子has_many :commentscomments belongs_to postRails kaminari分頁子表

我的每篇文章都有一個帶有評論列表的顯示頁面,我想分頁評論。使用當前的代碼,我將顯示所有頁面上的所有評論列表。所以,如果我有10條評論,並且我想在每個頁面上有2條評論,那麼我會得到5頁,其中有10條評論。有人可以點亮一些光線嗎?

我的代碼:

Posts controller: 

def show 
    @post = Post.find(params[:id]) 
    @comments = @post.comments.page(params[:page]).per(3) 

    respond_to do |format| 
    format.html # show.html.erb 
    format.json { render json: @post } 
    end 
end 


"Show" views: 

<%= paginate @comments %> 

<% @post.comments.each_with_index do |comments, index| %> 
    <tr> 
    <td><%= index+1 %></td> 
    <td><%= comment.date %></td> 
    <td><%= comment.text %></td> 
    </tr> 
    <% end %> 
</table> 

回答

1

您需要使用分頁對象的視圖,而不是讓他們從數據庫中新鮮:

<% @comments.each_with_index do |comments, index| %> 
    <tr> 
    <td><%= index+1 %></td> 
    <td><%= comment.date %></td> 
    <td><%= comment.text %></td> 
    </tr> 
<% end %> 

這讓他們新鮮,unpaginated:

@post.comments 
+0

頁面現在正確顯示。但是,每次移至下一頁時,我的索引都會重置。有沒有辦法保持評論運行指數,儘管他們在哪個頁面?例如第1頁有指數1-5,2有6-10?謝謝。 – Mozbi