前提
Docker環境上でRuby on railsを用いて、開発しております。
バージョン情報
Rails 6.1.4.7
ruby 2.7.4
Docker 20.10.11
Node.js v14.17.6
現在、webpackerを用いており、以下の記述でjsファイルとVIEWが連携しています。
= javascript_packs_with_chunks_tag 'select'
実現したいこと
gonを使ったRailsとJavascriptの連携をし、controller内でセットした変数をJavascript内で使う事ができるようにしたい。
発生している問題・エラーメッセージ
gonが起動していればhello,テスト太郎!と表示されるはずが、hello,$(gon.user.name)!とそのまま表示されてしまい、gonが起動していない
該当のソースコード
Gemfileに以下の記述は既にあり、
Gemfile
1gem 'gon', '~> 6.4’
dockerのappコンテナ上でbundle installを実行済みです。
app/controllers/select_controller.rb
1def new 2 gon.user = 'テスト太郎' 3end
app/javascript/packs/select.js
1 2window.alert('hello,$([gon.user.name](http://gon.user.name/))!');
app/views/form.html.slim
1= include_gon 2= javascript_packs_with_chunks_tag 'select'
試したこと
ターミナルのappコンテナ上でgem listと入力し、gonがインストール済みか確認したところインストールされていることが確認が取れました。
次に
app/views/form.html.slim
1= javascript_include_tag "select"
を追加したところ以下のエラーが表示されました。
Sprockets::Rails::Helper::AssetNotFound at /settings/locations/new The asset "category_select.js" is not present in the asset pipeline.
そこで、以下の記述を
config/envitonments/production.rb
1config.assets.compile = true
falseから記述をtrueに変更をして、再起動したのですが、変化はありませんでした。
controller内でセットした変数をJavascript内で使う事ができないのは、どのような原因が考えられるでしょうか?
補足情報(FW/ツールのバージョンなど)
参考サイト
https://makolog.xyz/gem/
https://qiita.com/s_nakamura/items/5d153f7d9db1b1190296
https://qiita.com/masashiiwasaki/items/c4360437094177ba042d

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/11/13 03:13 編集