我不明白嵌套路线的必要性。我理解Rails路线有很多东西。
以下是我在Rails 3.2应用程序中的简单设置:
Categories habtm Products
在routes.rb中:
resources :categories do
member do
get 'list_products_in'
post 'add_to'
post 'remove_from'
end
end
resources :products
我基本上创建了一个页面,可以将产品添加到类别中。顶部有一个包含产品的选择框,底部是列表。要将产品添加到列表,请从选择框中选择一个,然后单击“添加”按钮。 “add_to”是通过Ajax调用的。效果很好。
我的问题是,为了让这个应用程序优雅地降级,我希望它在没有Ajax的情况下工作。但是我的路线都没有正常工作。
我从上面知道我的自定义路由除了类别ID之外不期望传递product_id。我的问题是,如何在自定义路径中添加更多参数?
答案 0 :(得分:0)
您可以在路线中使用:variable
段来提供其他可变段。
例如,您可以在product_id
和add_to
路线中添加remove_from
段:
...
post 'add_to/:product_id'
post 'remove_from/:product_id'