我正在尝试添加一个链接,以便用户可以销毁他/她自己的帐户。我正在使用内置的注册类。
在我看来我有<%= link_to 'Destroy', current_user, :confirm => 'Are you sure you want to destroy your account?', :method => :delete %>
例如指向 localhost:3000/users/4
首先,这是正确的链接吗?
其次,如何重定向到根路径,因为目前它看起来像尝试重定向到 id 4 的用户(并且失败,因为它受到保护)。
Rake 路线给出DELETE /users(.:format) {:action=>"destroy", :controller=>"devise/registrations"}
提前致谢。
Try
<%= link_to 'Destroy', user_registration_path, :confirm => 'Are you sure you want to destroy your account?', :method => :delete %>
这是因为设计将注册视为单一资源 http://guides.rubyonrails.org/routing.html#singular-resources.
此外,运行rake routes
您可以看到有关注册路由的详细信息:
user_registration POST /users(.:format) {:action=>"create", :controller=>"devise/registrations"}
new_user_registration GET /users/sign_up(.:format) {:action=>"new", :controller=>"devise/registrations"}
edit_user_registration GET /users/edit(.:format) {:action=>"edit", :controller=>"devise/registrations"}
user_registration PUT /users(.:format) {:action=>"update", :controller=>"devise/registrations"}
user_registration DELETE /users(.:format) {:action=>"destroy", :controller=>"devise/registrations"}
它的意思是:
-
user_registration_path
是一个返回的辅助方法/users(.format)
- Perform
DELETE
请求于/users(.format)
将删除注册
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)