我正在爲管理員創建表單並列出,編輯和刪除用戶。我嘗試了許多不同的變體來刪除用戶,但沒有任何作用。我想知道是否因爲我需要在我的routes.rb中使用devise_for :users
和resources :users
。這是因爲我有上傳/附件鏈接到用戶。但這裏是我的鏈接設計/刪除用戶錯誤
<%= link_to 'Delete',user, :method => 'delete', :confirm => 'Are you sure?' %>
而且我的routes.rb
# devise_for :users
devise_for :users do
get "https://stackoverflow.com/users/sign_out" => "devise/sessions#destroy", :as => :destroy_user_session
end
resources :users do
resources :attachments
end
我收到的錯誤是The action 'destroy' could not be found for UsersController.
但我的用戶控制器具有
def destroy
@user = User.find(params[:id]).destroy
redirect_to admin_index, :flash => { :success => 'User was successfully deleted.' }
end
這與Devise沒有任何關係。看起來類似於[這個SO問題](http://stackoverflow.com/questions/4606860/rails-3-link-to-to-destroy-not-working)。那裏的答案建議使用一個按鈕,這可能是一個好主意,但鏈接也適用於Rails。這可能是您的Ajax JavaScript驅動程序的一個問題。 – numbers1311407