2013-07-25 66 views
6

这是使用will_paginate(我知道我在哪里了?!)我第一次尝试轨道4 - will_paginate

titles_controller.erb

def index 
    @titles = Title.active.sorted.paginate(:page => params[:page]) 
    end 

index.html.erb

<% will_paginate @titles.each do |title| %> 

错误:

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

WTF am I d错了吗?提前致谢。

回答

11

请阅读将分页docs。你需要写:

<%= will_paginate @posts %> 

有没有必要添加each

所以整个图会是什么样子:

<% @titles.each do |title| %> 
    <!-- do smth with title --> 
<% end %> 

<%= will_paginate @titles %> 
+0

谢谢 - 我确实读过文档,但认为will_paginate调用位于顶部。现在明白了。 –

+2

嘿,对不起,如果这听起来粗糙,这不是我的意图;) – Lucas

3

你的情况,你不acctually需要写:

<%= will_paginate @titles %> 

因为它是在title_controller的背景下,will_paginate将承担他们的IS一个@titles变量可用。因此有可能只写:

<%= will_paginate %>