rails 3 dynamic route

Hi all

My problem is simple :

I have a link which points on : "products/category/#{category.id}/#{category.name}"

In my route, I'd like this link calls "products/index" BUT I want this URL in the browser : "products/category/#{name}"

Using Rails 3 I instinctively tried :

match "products/category/:id/:name", :to => "products#index", :as => "products/category/#{name}"

But the server doesn't even run because of #{name} in :as I don't know how to precise a dynamic value in :as or maybe I am totally wrong.

Thanks

use

match “products/category/:id/:name” => “products#index”

the :as argument is for named_routes. if you want a named_route you can instead use

match “products/category/:id/:name” => “products#index”, :as => :product_category

then in your views, you can use the named route

product_category_path(‘1’, ‘foo’)

which will produce

products/category/1/foo