DevInterface: Comunicato Stampa
-
11 ago DevInterface15:07 - 11 ago 2011 Veneto http://feedproxy.google.com/~r/devinterfaceblog/it/~3/oVs8eDLksDE/
Tips: Paginazione multipla con will_paginate
Will Paginate è la gemma più utilizzata per la paginazione in Ruby on Rails.
Succede a volte di dover paginare più liste diverse su una stessa pagina.
Questo tip mostra come è possibile visualizzare una lista paginata di prodotti ed una lista paginata di servizi su una stessa pagina utilizzando will_paginate.
Il punto chiave sta nell’utilizzare un parametro param_name personalizzato sia nella view che nel controller.Il codice della view sarà qualcosa di simile a questo:
1
2
3
4
5
6
7<br />
# ...<br />
# la lista di prodotti va qui<br />
<%= will_paginate @products, :param_name => 'products_page', :prev_label => t('helpers.labels.previous'), :next_label => t('helpers.labels.next') %></p>
<p># la lista di servizi va qui<br />
<%= will_paginate @services, :param_name => 'services_page', :prev_label => t('helpers.labels.previous'), :next_label => t('helpers.labels.next') %><br />
# ...<br />E questo invece sarà il codice del controller:
1
2
3
4
5
6
7<br />
# ...<br />
def index<br />
@products = current_company.products.paginate(:page => params[:products_page], :per_page => 10)<br />
@services = current_company.products.paginate(:page => params[:services_page], :per_page => 10)<br />
end<br />
# ...<br />Related Post
-