2013-07-14 47 views
8

我正在使用CKEditor gem。我對application.js和配置routes.rb都像如下:Ckeditor珠寶問題與生產模式

# application.js 
//= require ckeditor/init 

# routes.rb 
mount Ckeditor::Engine => '/ckeditor' 

創業板工作正常的發展模式,而是移動到生產模式的時候,我得到了錯誤404,當瀏覽器請求在CKEditor的文件夾中的JS和CSS文件:

GET http://mydomain/assets/ckeditor/config.js?t=D2LI 404 (Not Found) 
GET http://mydomain/assets/ckeditor/skins/moono/editor.css?t=D2LI 404 (Not Found) 
GET http://mydomain/assets/ckeditor/lang/vi.js?t=D2LI 404 (Not Found) 
GET http://mydomain/assets/ckeditor/styles.js?t=D2LI 404 (Not Found) 

請幫我解決我的ckeditor路由配置。先謝謝你。

回答

8

你需要明確直接Rails的預編譯的CKEditor資產生產:

# config/application.rb 
config.assets.precompile += Ckeditor.assets 

然後,您的生產環境中,強制預編譯:

rake assets:precompile:all 
2

在我來說,我是使用Rails 4並部署到Heroku。我發現我必須先在本地預先編譯資產,然後提交/public/assets/ckeditor目錄並進行部署。之後開始工作,雖然我並不喜歡這個解決方案。

2

只要升級CKEditor的寶石的情況下,最新的版本(〜> 4.1.0),我遇到了一些麻煩,只有郎文件沒有在Rails 5中找到。

我必須這樣做才能使它工作 - >Rails.application.config.assets.precompile += %w(ckeditor/* ckeditor/lang/*)assets.rb

我不知道爲什麼第一個聲明不僅僅包含lang文件夾(它適用於適配器,插件和皮膚文件夾)。錯誤可能?

+1

你可以試試這個:Rails.application.config.assets.precompile + =%w(ckeditor/**/*) –