質問: ### 前提・実現したいこと 現在Rails環境でckeditor gem を使って、エディターを作っているのですが、 ckeditor関連のファイルが読み込まれません。 おそらく原因としてはビルドしたい環境が/test配下になるためckeditorのcssやjsが取得出来ていないのかと思います。 ディベロッパーツールを見たところ、 以下ファイルが読み込まれていてエラーが表示されています。 https://abc.com/assets/ckeditor/config.js?t=H5SC https://abc.com/assets/ckeditor/skins/moono-lisa/editor.css?t=H5SC https://abc.com/assets/ckeditor/lang/ja.js?t=H5SC 一方で、読み込ませたいファイルは以下にファイルです。以下を手動でURLをで叩いてみたところ正常に読み込めました。 https://abc.com**/test/**assets/ckeditor/config.js?t=H5SC https://abc.com**/test/**assets/ckeditor/skins/moono-lisa/editor.css?t=H5SC https://abc.com**/test/**assets/ckeditor/lang/ja.js?t=H5SC なので/test/にあるckeditor関連のファイルをとってきたいのですが、 どのようにカスタマイズすれば良いのかご教示いただけますでしょうか。 ``` config.assets.precompile += Ckeditor.assets config.assets.precompile += %w( ckeditor/* ) config.autoload_paths += %W(#{config.root}/app/models/ckeditor) ```
回答: assets precompile の仕組みを理解されていないのかもしれません。 assets precompileとは =================== gem file内 と assets以下にあるjs(coffee)とcss(scss,sass)を全部まとめて 最適化(コンパイルも含む)して、レイアウト(デフォルトではlayouts/application.html.erb) で一括で読み込むという最適化作業です。 application-hash値.js等のファイルにコンパイルされてその1ファイルのみを読み込むということです。 で、読み込む順番や、必要なものだけを選ぶ設定をするのが assets/javascripts/application.js assets/stylesheets/application.css の両ファイルであり。 ここに //= require ckeditor/init *= require ckeditor とそれぞれ追記して 通常のgemは//= require ckeditorだけでいいのですが公式に書いてある場合はそれを優先してください。 rake assets:precompile すれば完了です。 config.assets.precompile += Ckeditor.assets config.assets.precompile += %w( ckeditor/* ) はおそらく不要なので削除してください。