Rails
CKEditor

Railsでckeditorとasset_syncを併用する

More than 3 years have passed since last update.


概要


問題

ckeditorのjavascriptがさらに別のjavascriptファイルを読み込もうとするが、ホスト名がs3でないため、jsのエラーが発生し、ckeditor自体が正常に動作しない。


解決

https://github.com/mkaszubowski/ckeditor#include-customized-ckeditor_basepath-setting

https://github.com/tsechingho/ckeditor-rails/wiki/Work-with-asset-host

↑を参考に

app/assets/javascripts/ckeditor/basepath.js.erb

を作成

<%

base_path = ''
base_path << Rails.application.config.action_controller.asset_host.to_s
base_path << Rails.application.config.assets.prefix
base_path << '/ckeditor/'
%>
var CKEDITOR_BASEPATH = '<%= base_path %>';

これをapplication.jsなどでrequireするとs3からjavascriptファイルを読み込むようになる