前提
トップページに遷移した時に、特定のデータから 14個抜き取りを行なって、表示するというコードを書いていたのですが、そのページに更新ボタンを設けたところ、トップページに遷移してから再度更新がかかってしまい、実質的に2度更新がかかっている状態で困っていました。
原因
ターボリンクスがAタグを監視して、自動更新を行なってしまっていると思ったため、ターボリンクスを無効にする方法を模索します。
問題点と解決
rails6ではapplication.jsにrequire("turbolinks").start()の記述があったため
これを無効にすれば、対応できたのですが、rails7にはそれがありませんでした。
代わりにimport "@hotwired/turbo-rails"という記述があり、これは怪しいなと思って調べていくと
詳しい内容は読み解けませんでしたが、Javascriptとの融合みたいなことが書いてあったので
怪しいと思ってコメントアウトしてみました。
// import "@hotwired/turbo-rails"
import "controllers"
そしたら2度更新が行われなくなりました!
注意
あくまでJavascriptを他に組み込んでいないので、弊害は出ていませんが
読んだドキュメントを見ると色々とありそうでしたので、Javascriptでも何か実行したいと考えている方は
今一度公式ドキュメント等を読んだ方が良いです。
参考文献