警告「廃止: action_cable.js は actioncable.js に名前が変更されました – Rails 8 より前に参照を更新してください」を修正するにはどうすればよいですか? (レール7.0.4)
概要
React をフロントエンドとして使用する Ruby on Rails シングルページ アプリケーションがありますが、Rails 6.1 から Rails 7.0 にアップグレードしてから、「廃止: action_cable.js の名前が actioncable.js に変更されました – Rails の前に参照を更新してください」という警告が表示されました。電子メールやホームページなどの静的ビュー (フォームなどを含まない) を除く、アプリケーションのほぼすべてのページで、ブラウザ コンソールに「8」が表示されます。ブラウザ コンソールの警告
Gemfile を見直して最新であることを確認し、問題の原因が古い Gem であることを期待してバンドル アップデートを実行しましたが、警告はまだ表示されます。プロジェクト フォルダーを確認しましたが、「action_cable.js」または「actioncable.js」ファイルはなく、コードのどの部分にもこれらのファイル/パスへの参照はありません。
この警告を修正する方法について誰かがアイデアを持っていますか?その方法や同じ問題を抱えている他の人に関する情報は見つかりませんでした。
初めて投稿するので、足りない情報がありましたら教えていただけると嬉しいです!
解決策
私の app/assets/javascripts/cable.js ファイルには、action_cable を要求する参照があります (これは、action_cable.js を探していると仮定します。このファイルは actioncable gem にあると思います。そのため、アクセスできませんでした)それを見つける。
require コメントに次の変更を加えると修正されるはずです。
// Action Cable provides the framework to deal with WebSockets in Rails.
// You can generate new channels where WebSocket features live using the rails generate channel command.
//
// CHANGE THIS this require from action_cable to actioncable
//= require actioncable
//= require_self
//= require_tree ./channels
おそらく次のように JavaScript アセットを再構築する必要があります。
rake assets:clean && rake assets:precompile
また、サーバーの再起動も必要になる場合があります。