2013-07-25 14 views
6

Questo è il mio primo tentativo con will_paginate (io so dove sono stato ??!)Rails 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| %> 

Errore:

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

WTF am I d stai sbagliando? Grazie in anticipo.

risposta

11

Si prega di leggere paginate docs. Hai bisogno di scrivere:

<%= will_paginate @posts %> 

Non c'è bisogno di aggiungere each.

Così intera vista sarebbe simile:

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

<%= will_paginate @titles %> 
+0

Grazie - ho letto la documentazione, ma pensato che la chiamata will_paginate è andato in alto. Ho capito adesso. –

+2

Ehi, scusa se questo suonava aspro, non era mia intenzione;) – Lucas

3

Nel tuo caso tu non acctually bisogno di scrivere:

<%= will_paginate @titles %> 

Perché è nel contesto del title_controller, will_paginate assumerà la loro è una variabile @titles disponibile. In questo modo è possibile scrivere solo:

<%= will_paginate %>