Forum: Rails-ES Como usar paginate y find ??

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
51bb5688c8c2c1b68d03c56da8e0b696?d=identicon&s=25 Alfredo Gama (alfredogz)
on 2007-01-15 15:10
Holas,

tengo que hacer una busqueda (filtro) y luego el resultado de esta tengo
que paginar el resultado debido a que es muy grande la salida. como
podria hacer esto??

muchas gracias.
8c01355770b98df67a28e5306c5b6502?d=identicon&s=25 Jaime Mora Ramones (moctan)
on 2007-01-15 18:49
En el controlador :

def user_list
  @user_pages, @users = paginate(:users, :conditions => "nombre =
'alfredo'",  :order_by => 'nombre')
end

En la vista user_list.rhtml  :

<table>
  <tr><th>Nombre</th></tr>
  <% for user in @users %>
    <tr><td><%= user.nombre %></td>
  <% end %>
</table>
<hr>
  <%= pagination_links(@user_pages) %>
<hr>

Espero te sirva.
---
Jaime Mora Ramones
51bb5688c8c2c1b68d03c56da8e0b696?d=identicon&s=25 Alfredo Gama (alfredogz)
on 2007-01-15 18:58
Gracias por responder,

si ese seria una manera pero mi find es de la forma:
@items = User.find(session[:id], :include=>[:items]).items

como lo pongo???

gracias

Jaime Mora Ramones wrote:
> En el controlador :
>
> def user_list
>   @user_pages, @users = paginate(:users, :conditions => "nombre =
> 'alfredo'",  :order_by => 'nombre')
> end
>
> En la vista user_list.rhtml  :
>
> <table>
>   <tr><th>Nombre</th></tr>
>   <% for user in @users %>
>     <tr><td><%= user.nombre %></td>
>   <% end %>
> </table>
> <hr>
>   <%= pagination_links(@user_pages) %>
> <hr>
>
> Espero te sirva.
> ---
> Jaime Mora Ramones
8c01355770b98df67a28e5306c5b6502?d=identicon&s=25 Jaime Mora Ramones (moctan)
on 2007-01-15 19:12
Alfredo Gama wrote:
> Gracias por responder,
>
> si ese seria una manera pero mi find es de la forma:
> @items = User.find(session[:id], :include=>[:items]).items

Entonces, utiliza Custom/"classic" pagination :

def list
    @person_pages = Paginator.new self, Person.count, 10, params[:page]
    @people = Person.find :all, :order => 'last_name, first_name',
                          :limit  =>  @person_pages.items_per_page,
                          :offset =>  @person_pages.current.offset
end

Espero te sirva.
---
Jaime Mora Ramones
8c01355770b98df67a28e5306c5b6502?d=identicon&s=25 Jaime Mora Ramones (moctan)
on 2007-01-15 19:14
Agrega :conditions en el find que vayas a utilizar.


Espero te sirva.
---
Jaime Mora Ramones
8c01355770b98df67a28e5306c5b6502?d=identicon&s=25 Jaime Mora Ramones (moctan)
on 2007-01-15 19:32
Por nuestro compañero Manuel González Noriega :

Solucionado. Extendiendo la asociación has_many con el método paginate
apropiado

http://www.railsweenie.com/forums/1/topics/314?page=1
http://ryandaigle.com/articles/2006/12/03/extend-y...

Espero te sirva.
---
Jaime Mora Ramones
51bb5688c8c2c1b68d03c56da8e0b696?d=identicon&s=25 Alfredo Gama (alfredogz)
on 2007-01-15 20:36
Jaime Mora Ramones wrote:
> Por nuestro compañero Manuel González Noriega :
>
> Solucionado. Extendiendo la asociación has_many con el método paginate
> apropiado
>
> http://www.railsweenie.com/forums/1/topics/314?page=1
> http://ryandaigle.com/articles/2006/12/03/extend-y...
>
> Espero te sirva.
> ---
> Jaime Mora Ramones

Works very GOOD!!! the problems is solved!
This topic is locked and can not be replied to.