2011-12-09 21 views
1

DELETE是否可以指定一放,或從route.rb刪除HTTP動詞,對於一個特定的路徑?導軌 - 指定HTTP動詞PUT或從路線

像:

get 'photos/show'

我試着用火柴像下面這樣做:

match 'photos/show' => 'photos#show', :via => :delete 

在這似乎是正確的耙路線,但它不會做刪除HTTP請求。我也試過:

match 'photos/show' => 'photos#show', :via => :random

而在耙路線的節目「隨機」

看來你可以指定get或post如圖所示guides,但我不知道我是否可以指定放置或刪除。可能嗎?

+0

有什麼錯'放 '的照片/:ID(:格式)',:到=>「照片#update''? – jibiel

+0

說實話,我沒有嘗試PUT動詞,但我沒有在routes.rb上找到任何東西,所以我認爲它可能不適用於DELETE。 – JohnDel

回答

4
put 'photos/:id(.:format)', :to => 'photos#update' 
delete 'photos/:id(.:format)', :to => 'photos#destroy' 

resources :photos 

和打你應用目錄與

rake routes 

來吧,你甚至沒有嘗試!

+0

好的問題是在設計範圍內。我想這裏面: devise_scope:用戶做 刪除「/註銷」 =>「設計/會話#消滅」 結束 ,並沒有工作。對此有何建議?謝謝。 – JohnDel

+0

你需要什麼?如果你想定製設計的路線,你可以試試'devise_for:用戶:path_names => {:sign_up => 「註冊」,:sign_in => 「登錄」,:SIGN_OUT => 「註銷」}' – jibiel

+0

看來你想要一些更深的定製。你可能想更新你的問題,然後在這裏引誘合適的人。 – jibiel

3

沒有什麼能阻止你使用put /後/刪除「直接」代替比賽。

作爲一個例子,這個工作對我來說:

get 'user/edit' => 'users#edit', :as => :edit_current_user 
put 'signup' => 'users#update' 

通選項,當你想例如像這條路線是非常有用的(不是頻繁的情況下,雖然):

match 'user/show' => 'users#show', :via => [:get, :post]