0

我不明白嵌套路由的必要性。我确实了解有关 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。我的问题是,如何向自定义路由添加更多参数?

4

1 回答 1

0

您可以:variable在路线中使用分段来提供额外的可变分段。

例如,您可以向您的和路线添加一个product_id段:add_toremove_from

...
post 'add_to/:product_id'
post 'remove_from/:product_id'
于 2012-06-11T18:15:14.390 回答