2013-07-25 14 views
6

Jest to moja pierwsza próba z użyciem will_paginate (wiem, gdzie ja byłam ??!)Szyny 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| %> 

Błąd:

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

WTF am I d oing źle? Z góry dziękuję.

Odpowiedz

11

Proszę przeczytać będzie paginacja docs. Trzeba napisać:

<%= will_paginate @posts %> 

Nie ma potrzeby dodawania each.

Więc cały widok będzie wyglądać następująco:

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

<%= will_paginate @titles %> 
+0

Dzięki - przeczytałem dokumenty, ale pomyślałem, że wezwanie będzie udane. Mam to teraz. –

+2

Hej, przepraszam, jeśli brzmiało to szorstko, nie było to moją intencją;) – Lucas

3

W twoim przypadku dont acctually trzeba napisać:

<%= will_paginate @titles %> 

Bo to jest w kontekście title_controller, will_paginate przejmie ich jest dostępna jest zmienna @titles. Tak więc możliwe jest, aby napisać:

<%= will_paginate %>