我有一个与 this question 中列举的问题类似的问题,除非我没有使用 ckeditor
gem。我直接使用 CKEditor 脚本。
我已将它们直接提取到 vendor/assets/javascripts/ckeditor
中,并将这些包含节添加到相应的 javascript list 文件中:
//= require ckeditor/ckeditor
//= require ckeditor/adapters/jquery
在开发中,它工作得非常好——我想是因为 Rails 直接为 Assets 提供服务。在生产中(当我将本地开发服务器切换到生产环境时),编辑器不会加载(只是像上面链接的问题那样的空格),并且我收到如下加载错误:
这些路径显然是错误的,现在我想起来,我什至不确定它在开发中是如何工作的。
有没有人让这个设置正常工作,或者我应该忍住并像其他人一样使用 gem ?
最佳答案
经过几个小时的修补,我发现我的问题有两个。
首先,您可以设置一个 CKEditor 全局选项来告诉它基本安装路径所在的位置。为了进行设置,我更改了 application.js
以添加以下两行:
//= require_self
CKEDITOR_BASEPATH = "/assets/ckeditor/";
其次,我的环境配置未设置为预编译几个 CKEditor 文件。因此,在 config/environments/development.rb 中,我将 ckeditor/config.js 和 ckeditor/contents.css 添加到我的文件数组中正在传递给 config.assets.precompile
。
编辑:我必须在预编译列表中添加更多文件,而不仅仅是此处列出的文件。全面的列表可能会产生误导,因为大多数文件都来自自定义主题。加载 Chrome Inspector 或 Firebug 并查看仍然返回 404 的资源列表,将它们添加到数组中,重新编译,然后查看是否修复了该问题,这相当简单。
关于ruby-on-rails-3.1 - Rails 3.1.2 ckeditor 供应商脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8230620/