2017-09-15 43 views
0

我希望能夠在我的新資源路線上發佈帖子請求,並遇到問題。目前我有這在我的routes.rb文件如何將一個「新」資源變成帖子並獲得?

resources :shipments, only: [:new] do 
end 

,我已經試圖把post :new的塊之間,但是這給了我

shipments POST /:slug/shipments(.:format) shipments#new

,但我想這

new_product_shipment GET|POST /:slug/shipment/new(.:format)

回答

0

你可以這樣做:

resources :orders, only: [:new] do 
    collection do 
    post 'new' 
    end 
end 

但是,順便說一句 - 這是非常奇怪的決定,有兩種方法的單一行動。

+0

該結束了給我'出貨量POST /:蛞蝓/發貨(。 :格式)出貨#new',無論如何只是將它與新的?或者我應該只使用match和'via:[:get,:post]完成一條新路線' – cvDv

+0

@cvDv你使用'post'new''而不是'post:new'?當然,你可以使用match來實現同樣的事情,我只是更喜歡第一種形式。 – unkmas

0

因爲你還沒有一個RESTful的路線,你不需要resources塊,對routes.rb頂層用match

match '/:slug/shipment/new', to 'shipments#new', via: [:get, :post]