LoginSignup
5
3

More than 3 years have passed since last update.

【Rails6】link_toでmethod: :deleteが使えない

Last updated at Posted at 2020-12-14

問題

<%= link_to 'ログアウト', 'logout_path, method: :delete %>
のリンクをクリックすると
No route matches [GET] '/login'が表示される。

DeleteじゃなくてGetでリクエストが送られてしまっている。

HTMLを確認すると、該当のaタグの中にdata-method="delete"の記述は確認できる。

ググって見つけた解決策

以下はどれも変化なし

  • app/javascripts/packs/application.jsjquery_ujsを読み込む
  • headの中のjsファイル読み込み部分を修正する
  • gemjquery-railsを追加する

応急処置

link_tobutton_toに変えたらmethod: :deleteが効くようになりました。
でもやっぱlink_toを使いたい。

うまくいった方法

$ yarn remove @fullhuman/postcss-purgecss

postcss-purgecssという、導入したけど結局使わなくなったnpmライブラリを削除したら、method: :deleteが効くようになりました。

5
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3