2012-07-01 45 views
0

我已經在我的Rails用戶控制器下面的代碼,讓用戶刪除自己:如何在Rails中添加用戶可以刪除自己的功能?

def delete_account 
User.find(params[:id]).destroy 
flash[:success] = "Your account has been deleted." 
redirect_to root_path 
end 

現在,我不確定如何正確的路由添加到我的route.rb文件,然後添加按鈕正確進入我的用戶設置視圖。 對於我的路由文件我有以下代碼:

match '/delete_account' to: 'users#delete_account' 

在我的設置中查看文件我有以下的代碼中添加一個按鈕,在視圖中delete_account行動:

<%= link_to class: "btn btn-danger", delete_account_path %>\ 

任何幫助你可以提供實現正確的路線和嵌入式紅寶石在我看來將不勝感激。對不起,如果這是一個簡單的錯誤修復;我是一名初學者開發人員,這給我帶來了一些麻煩。

回答

3

我認爲最好使用RESTful方式。

將控制器中的方法重命名爲destroy

在你的routes.rb,

resources :usersmatch '/delete_account', to: 'users#destroy'

在視圖中,說,在show.html.erb,

<%= link_to 'Delete', @user, confirm: 'Are you sure?', method: :delete %>

和明顯的show行動應該找到右側用戶,

@user = User.find(params[:id])

+0

太棒了,它現在正在工作!非常感謝!我非常感謝這個幫助。 – user1483441

相關問題