rails will_paginate在视图中呈现错误

时间:2013-04-01 14:13:11

标签: ruby-on-rails will-paginate

我无法使用will_paginate在视图上渲染我的项目。我收到此错误

undefined method `total_pages' for #<Enumerator:0x007fe098856378>

这是我在控制器上的分页

@com = @text.comments.sorted.paginate(:page => 1, :per_page => 30)

和我的查看文件代码。

 <% will_paginate @com.each do |text| %>
<div class="comments"> <p class="time"><%= Time.now %></p> 
<p><%=  text.text %></p></div>

控制器文件是

def show
    @text = Microblog.find(params[:id])
    @com = @text.comments.sorted.paginate(:page => 1, :per_page => 2)
    @rating = (@text.up - @text.down)
  end

模型文件

class Comment < ActiveRecord::Base
    attr_accessible :text, :microblog_id
    belongs_to :microblog
    scope :sorted, order("comments.created_at DESC")
end

我找不到这里的问题:(

2 个答案:

答案 0 :(得分:3)

您正在将分页小部件(&lt; 1 2 3&gt;)与可用元素的列表混合在一起。你想要的是:

<% will_paginate @com %>
<% @com.each do |text| %>
   <div class="comments"> <p class="time"><%= Time.now %></p> 
   <p><%=  text.text %></p></div>

答案 1 :(得分:0)

问题解决了!使用:page => params[:page]代替:page => 1 谢谢大家