【发布时间】:2016-12-24 20:37:16
【问题描述】:
我目前有以下资源:
routes.rb
Rails.application.routes.draw do
resources :store do
resources :candy
end
end
如您所知,这会为 6 个 HTTP 操作生成路由,包括嵌套的 store/store_id/candy/... 路由。这对我来说很好,但是我只想使用 GET 和 POST 而不是 PATH/PUT 和 DELETE
POST store/destroy/:id 和 POST store/update/:id 对我来说是理想的行为。
首先,这是打破惯例吗?如果不是,有没有一种简单的方法来生成这样的路线?
【问题讨论】:
-
请看the Rails Guides。如果
stores不应该是一个集合,那么使用resource :store(注意resource是单数)。您可以通过only:和except:参数控制支持哪些方法。例如resources :candies, only: [:show, :create]会将GET /candies/:id和POST /candies路由到CandiesController。
标签: ruby-on-rails