我第一次使用Devise gem來驗證用戶身份。我可以註冊,註銷,登錄和編輯用戶帳戶而沒有問題,但刪除帳戶不起作用!當我點擊按鈕進行刪除時,JS確認彈出,詢問我是否要刪除,點擊yes ...,然後我被重定向到用戶的顯示頁面。用戶帳戶完好無損。Rails&Devise:用戶帳戶沒有刪除
在views/devise/registrations/edit.html.erb
:
<p>Unhappy? <%= button_to "Cancel my account", '/users/#{@user.id}', data: { confirm: "Are you sure?" }, method: :destroy, class: "btn btn-danger" %></p>
在我UsersController:
def destroy
@user = User.find(params[:id])
@user.destroy
if @user.destroy
redirect_to root_path
end
end
我還是on Rails的路由搖搖欲墜,但在我的routes.rb我:
devise_for :users, :controllers => { registrations: 'registrations' }
以及:
resources :users
當我運行rake航線,兩條航線,我認爲可以關聯是:
DELETE /users(.:format) registrations#destroy
DELETE /users/:id(.:format) users#destroy
我敢肯定,我在做什麼錯誤的路線,但我看不到什麼。任何建議表示讚賞!
謝謝!這工作。把我的動詞和動作搞混了! –