【发布时间】:2013-10-02 04:31:28
【问题描述】:
我正在尝试在 Rails 3.1 应用程序中使用 CKEditor。我在 app/assets/javascripts/ckeditor/ 中有 ckeditor 目录,移除了诸如未压缩和模块化源等无关内容。
它在开发中运行良好。在生产或登台环境中,ckeditor 找不到它自己的文件:config.js、lang/en.js skins/kama/editor.css。我可以看到这些文件没有被预编译,这是有道理的,因为默认情况下资产管道不会包含或预编译任何匹配 /.css/ 或 /.js/ 的内容。
根据 rails docs 和 previous answers like this one,将我需要的文件添加到 config.assets.precompile 应该是解决方案。然而,尽管付出了巨大的努力,我还是无法弄清楚我应该在 config.assets.precompile 中使用什么格式。它没有记录,也没有给出示例。
我已尝试按名称显式添加文件:
config.assets.precompile << ['config.js', 'en.js', 'editor.css']
我已尝试添加与文件匹配的正则表达式:
config.assets.precompile << [ /.*config\.js/, /.*en.js/, /.*editor.css/ ]
我已尝试明确添加完整路径:
config.assets.precompile << File.join(Rails.root, 'app', 'assets', 'javascripts', 'ckeditor', 'config.js')
(etc...)
在所有这些情况下(以及我尝试过的所有其他情况),运行 rake assets:precompile 仍然无法将我需要的文件移动到 public/assets 中。所有的图像等等,但不是 CKEditor 需要运行的三个 javascript 和/或 css 文件。
有什么想法吗?
【问题讨论】:
-
你在哪里追加到 config.assets.precompile?
标签: ruby-on-rails ruby-on-rails-3 ckeditor asset-pipeline