Hi Julian,

Thank you very  much, it worked like a charm! :D. Ihave another doubt,
is there any way to make this horrible URL:

http://www.angelazul.cr/galeria/page/1?type=&criteria=au&category=1&orderby=price&ocation=1

use friendly urls?, any idea?

Regards

On 27 mayo, 04:05, Julian Leviston <[email protected]> wrote:
> On 27/05/2009, at 7:40 PM,fRAnKEnSTEinwrote:
>
>
>
>
>
> > Hi there,
>
> > i have a catalog of products, i am using will paginator for paging the
> > results. now The user can sor the products by: name, price or
> > category, and can filter the products by category and ocation. For
> > doing this i have used link_to hepler like so:
>
> > link_to "Name", :action => :index, :orderby => "name"
>
> > link_to "Category", :action => :index, :orderby => "category_id"
>
> > link_to "Price", :action => :index, :orderby => "price"
>
> > for category in @categories
> >   link_to category.name, :action => :index, :category => category.id
> > end
>
> > for ocation in @ocations
> >   link_to ocation.name, :action => :index, :ocation => ocation.id
> > end
>
> > So, when the user click in the sort functionality, the URL will be any
> > of these:
>
> >http://www.something.com/gallery/page/4?orderby=name
> >http://www.something.com/gallery/page/4?orderby=category_id
> >http://www.something.com/gallery/page/4?orderby=price
>
> > And when the user click on the filter funtionality the URl will be
> > any:
>
> >http://www.something.com/gallery/page/4?category=1
> >http://www.something.com/gallery/page/4?ocation=3
>
> > I am having problems because i do not know how to keep both parameters
> > on the url if the user click on one of the sort links anf one of the
> > ocation or category links. In this case what i want to have in my URL
> > will be:
>
> HiFrankenstein(;-)),
>
> In your controller, you'll need to do something like this:
>
> @page = params[:page]
> @category_id = params[:category]
> @orderby = params[:orderby]
> @ocation_id = params[:ocation]
>
> and so on.
>
> As you (may or may not) know, these instance variables (the ones with  
> @ signs) get auto-transferred to view for you...
>
> Now in the view, your links will have to include all of these...  
> (omitting them obviously where you're overriding them or setting them  
> specifically - for example where you're setting the sort order link,  
> you wouldn't want to include the sort order instance varaible there...)
>
> eg:
>
> link_to "Name", :action => :index, :orderby => "name", :category =>  
> @category_id, :page => @page, :ocation => @ocation_id
>
> for category in @categories
>    link_to category.name, :action => :index, :category =>  
> category.id, :page => @page, :orderby => @orderby, :ocation =>  
> @ocation_id
> end
>
> for ocation in @ocations
>    link_to ocation.name, :action => :index, :ocation =>  
> ocation.id, :category => @category_id, :page => @page, :orderby =>  
> @orderb
> end
>
> And back in the controller, your find command will need a condition  
> clause that only uses the params that have been set, and order clause  
> that only uses the orderby params if it's been set.
>
> HTH,
> Julian
>
> ----------------------------------------------
> Learn:http://sensei.zenunit.com/
> Last updated 20-May-09 (Rails, Basic Unix)
> Blog:http://random8.zenunit.com/
> Twitter:http://twitter.com/random8r
>
> >http://www.something.com/gallery/page/4?category=1&orderby=name
>
> > Or if nothing has been selected, i wish for example:
>
> >http://www.something.com/gallery/page/4?category=&orderby= (in this
> > case i set defaults values for each parameter)
>
> > Any idea, suggestion?
>
> > Regards
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to