Rails:在Micropost下评论分页

时间:2012-02-29 04:31:55

标签: ruby-on-rails ajax ruby-on-rails-3 jquery pagination

我在微博下有一个评论模型。我想知道我是否可以对此进行分页,这样一旦在微博上点击评论按钮,就不会同时显示50条评论。我很确定这不能分页,但有一种方式像Facebook,只有一定数量的显示,然后用户可以显示更多,如果他们喜欢。目前我的代码如下所示:

评论部分的Micropost HTML

<div id='CommentContainer-<%= micropost.id%>' class='CommentContainer Condensed2'>
<div class='Comment'>
<%= render :partial => "comments/form", :locals => { :micropost => micropost } %>
</div>
<div id='comments'>
<%=render micropost.comments %>
</div>
</div>

点击上面的按钮会显示此部分,我不希望同时显示50条评论。所有建议都非常有用。谢谢!

2 个答案:

答案 0 :(得分:2)

  1. 确保在控制器中呼叫@comments = Comment.paginate(:page => params[:page], :per_page => 10)
  2. 您通过<%= will_paginate @comments %>来电呈现小组,而不是通过:render,然后通过will_paginate
  3. 因为我已经知道你正在使用嵌套的部分。我会确保您呼叫的项目具有正确的集合。在满足这三个方面之后,应该可以正常工作。
  4. 您还可以确保在will_paginate结帐电子转播,但如果没有专业订阅,您可能需要观看outdated version

答案 1 :(得分:0)

我建议你查找最常用于轨道分页的2个轨道宝石

- &GT; will paginate

- &GT; Kaminari

我更喜欢Kaminari而不是paginate,因为它提供了比分页更多的灵活性。