在我網該刪除操作,使用的link_to在軌
link_to('Edit', edit_manage_user_path(user.id))
工作正常,但此,
link_to('Delete', delete_manage_user_path(user.id))
給出了錯誤「未定義的方法`delete_manage_user_path」爲#<#:0xc05439c> 「鑑於我的控制器中存在刪除操作..
任何想法爲什麼會出現此錯誤?
在我網該刪除操作,使用的link_to在軌
link_to('Edit', edit_manage_user_path(user.id))
工作正常,但此,
link_to('Delete', delete_manage_user_path(user.id))
給出了錯誤「未定義的方法`delete_manage_user_path」爲#<#:0xc05439c> 「鑑於我的控制器中存在刪除操作..
任何想法爲什麼會出現此錯誤?
如果使用resurces
路線,路徑destroy
作用是一樣的,以show
,但你應該使用HTTP DELETE
方法:
link_to 'Delete', [:manage, user], method: :delete
link_to 'Delete', manage_user_path(user), method: :delete
這會調用您的刪除操作。如果您正在使用寧靜的路由,則沒有此路徑delete_manage_user_path(user)
。
這不會解決'不確定method'錯誤。 – 2014-09-04 07:22:26
是的,我正在編輯我的回答,同時 – 2014-09-04 07:22:59
爲刪除調用格式爲:
<%= link_to 'Delete', manage_user_path(user.id), :method => :delete %>
使用rake routes
瞭解可用路線,包括生成的路線幫助程序以及處理請求的控制器/操作。
知道是戰鬥的一半。你需要找出哪些是刪除資源的正確途徑。
bundle exec rake routes
下面是從我自己的Rails應用的一個輸出的例子:
我添加了一個箭頭,你應該尋找您可以通過運行以下命令這樣做。
一旦你有了路由,你就需要指定當用戶點擊鏈接時如何發送HTTP請求。您可以通過在嵌套自定義data
屬性中提供method
鍵來完成此操作。這裏有一個例子:
<%= link_to "Delete", user_path(user), data: { method: :delete } %>
其他資源:
謝謝你,這工作! – Anss 2014-09-04 07:35:45