我尝试创建一个按钮以从数据库中删除用户。
在路线中,我有:
devise_for :users, :controllers => { registrations: 'registrations' }
match 'users/:id' => 'registrations#destroy', :via => :delete, :as => :admin_destroy_user
registration_controller :
def destroy
@user = User.find(params[:id])
if @user.destroy
redirect_to root_path
end
end
_backoffice.html.erb 档案:
<%= button_to 'Delete', admin_destroy_user_path(user.id), :class => 'btn btn-danger btn-sm', :method => :delete, data: {:confirm => 'Tem a certeza que quer apagar este utilizador?'} %>
这是我得到的错误:
RegistrationsController#destroy中的NoMethodError
未定义的方法`name&#39;为零:NilClass
def resource_name
devise_mapping.name
end
alias :scope_name :resource_name
感谢您的帮助。
答案 0 :(得分:0)
该错误表示RegistrationsController
中没有名为registration_controller
的方法。但在您的帖子中,您将此控制器引用为:systemctl restart httpd.service
(即没有“s”)
也许你已经将RegistrationController定义为单数,而不是复数?