的Rails +设计:试图删除用户帐户

问题描述:

当我试图删除自己的帐户在我的Rails应用程序我得到的Rails +设计:试图删除用户帐户

没有路由匹配“/用户”

笔者认为:

<p>We hate to see you go. <%= link_to "Cancel my account", registration_path(resource_name), :confirm => "Are you sure?", :method => :delete %>.</p> 

我的路线:

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"} 
        PUT /users(.:format)       {:action=>"update", :controller=>"devise/registrations"} 
        DELETE /users(.:format)       {:action=>"destroy", :controller=>"devise/registrations"} 

我错过了什么吗?

+0

resource_nam e =用户。我只是尝试传递current_user(这是一个用户对象),我得到了相同的结果。 – Ryan 2012-01-11 03:39:56

+0

不要紧,然后......删除我的评论:-) – Mischa 2012-01-11 03:41:01

+0

你可以发布你的实际routes.rb文件? – jstim 2012-01-11 04:08:36

根据您的耙路输出,你需要使用user_registration_path帮手,而不是仅仅registration_path:

<p> 
    We hate to see you go. 
    <%= link_to "Cancel my account", user_registration_path(resource_name), :confirm => "Are you sure?", :method => :delete %>. 
</p> 

并请仔细检查,如果该链接与DELETE方法触发(如果适当的js文件包括)

+0

这给了我/users.user在我的URL而不是/用户。思考? – Ryan 2012-01-13 02:19:09

+0

我的所有JavaScript文件都包含在内。 – Ryan 2012-01-13 02:36:25

+0

是的,你说得对,我在rake路由中被user_registration弄糊涂了。做所有其他(尤其是更新用户注册)是否正常工作? – alony 2012-01-13 07:34:42

如果您正在使用设计只是做

<%= link_to "My Account", edit_user_registration_path %> 

<p> 
    Unhappy? 
    <%= link_to "Cancel my account", 
     registration_path(current_user), 
     data: { confirm: "Are you sure?" }, 
     method: :delete %> 
</p>