2014-01-26 60 views
0

从下面的URL我如何提取值1?从轨道中提取参数url

`http://localhost:3000/category/products/1` 

我试过params [:id]和params [:products] [:id]但没有任何东西。

+0

尝试'PARAMS [:PRODUCT_ID]'。 – jcm

回答

1

你在routes.rb文件中做出了合适的修改吗?你需要包括类似

GET /category/products/:id , ... 

使其与params[:id]一起使用。

0

路线

直接回答你的问题是要解决您的routes.rb文件

按照Rails的RESTful routing structure,你应该能够使用名为范围内实现这一点:

#config/routes.rb 
scope 'category' do 
    resources :products 
end 

#/category/products/1 -> params[:id] 

嵌套

我上面推荐的应该解决您的问题直接

不过,我想你想实现nested资源。如果是这样的话,你应该使用这样的事情:

#config/routes.rb 
resources :categories do 
    resources :products 
end 

这将允许你这样做:

#categories/:id/products/:product_id