我在我的Rails 4应用程序中使用ckeditor gem 。在本地和我的登台 heroku 环境中一切正常,但是在推动生产环境时出现此错误:
GET http://myapp.herokuapp.com/assets/ckeditor/contents.css 404 (Not Found)
GET http://myapp.herokuapp.com/assets/ckeditor/skins/moono/icons.png 404 (Not Found)
编辑器显示良好,但所有图标都丢失了。
我遵循了自述文件(https://github.com/galetahub/ckeditor),但我可能遗漏了一些东西。
这是我的步骤:
1)Gem安装,生成等......
2)config.autoload_paths += %W(#{config.root}/app/models/ckeditor)
在 application.js 中
3)mount Ckeditor::Engine => "/ckeditor"
在 routes.rb (我不明白为什么)
4)在application.js中
//= require ckeditor/override
//= require ckeditor/init
这到底在做什么,为什么需要覆盖?(这些文件在哪里,因为没有 in /app/assets
,也/lib/assets
没有 in /vendor/assets
)
Heroku 是面向只读的,因此我无法按照教程中的说明运行 rake 任务。我认为这就是为什么我在生产模式下遇到错误的原因。
有没有人遇到过同样的问题?我遍历了所有 stackoverflow 问题,但到目前为止没有解决我的问题。
更新 :
我发现使它起作用的唯一方法是实时编译:config.assets.compile = true
但我不想在生产中使用它,而且我不明白为什么它会起作用。