will_paginate -error-undefined method`total_pages\'

问题描述

|| 我在我的Rails应用程序中使用will_paginate \“ 2.3.15 \” 在我的units_controller.rb中
def index
    @units = Unit.paginate(:all,:page => params[:page],:order => \'created_at DESC\')
end

in my views(index)

        <%= will_paginate(@units)%>

but it gives error

undefined method `total_pages\' for #<ActiveRecord::Relation:0xb523dc>
我的Rails版本3.0.0  和红宝石版本1.8.7 请帮助     

解决方法

        为什么加上ѭ1? 在will_paginate Wiki中,您可能应该使用:
@units = Unit.paginate(:page => params[:page],:order => \'created_at DESC\')
    ,        当选择的集合大小为零时,这发生在我身上。 (即,在这种情况下,@ units.size == 0)在视图中进行测试似乎可以解决问题。即。
<% if @units.size > 0 %>
  <%= will_paginate @units %>
<% end %>