環境
- Rails 5.2.3 (APIモード)
- activeadmin (2.3.1)
事象
管理者画面(http://localhost:3000/admin/) にて、管理者を削除するボタンを押したところ、Routing Error No route matches [POST] "/admin/admin_users/2"が発生する。
原因
HTTPのPUTメソッド、DELETEメソッドを実現するためのミドルウェアであるRack::MethodOverrideが使用されていなかったため。
対応
- rake middlewareコマンドを実行し、Rack::MethodOverrideがないことを確認
- application.rbにconfig.middleware.use Rack::MethodOverrideを追加
class Application < Rails::Application
(中略)
config.middleware.use Rack::MethodOverride