Rails 7でflashメッセージが表示されない

Rails 7でflashやflash.nowが表示されなくなったので、その原因と解決方法。

発生した問題

Rails 7でflashやflash.nowが表示されない。

pathによっては表示される場合もある。

解決法

turbo-railsを削除する。

必要があれば関連するjsファイルなどを削除する。

他の解決方法

turboを使いたい場合は、そのやり方もあるが、今回は解説しない。

参考サイト:

Rails7 Hotwireを使用してフラッシュメッセージを機能させる!Turbo Rails Tutorial をやってみた(7章) – Qiita

Flash messages with Hotwire and Turbo Streams

原因

turbo-railsを使うとリクエストが1回だけではなく2回になってflashメッセージが表示されなくなるっぽい。

pathによってflashが表示されたりされなかったりするのは、jsファイルを使っているかどうかによる。

ログの調査

Railsのログを見るとリクエストが2回入っている。おそらくこれが原因でflashが表示できない。

参考サイト

Comments

タイトルとURLをコピーしました