Ruby on rails 3.1 Rails 3.1.2 ckeditor供应商脚本

Ruby on rails 3.1 Rails 3.1.2 ckeditor供应商脚本,ruby-on-rails-3.1,ckeditor,Ruby On Rails 3.1,Ckeditor,我的问题与中列举的问题类似,只是我没有使用ckeditorgem。我直接使用CKEditor脚本 我已将它们直接提取到供应商/assets/javascripts/ckeditor中,并将这些include节添加到相应的javascript清单文件中: //= require ckeditor/ckeditor //= require ckeditor/adapters/jquery 在开发中,它工作得非常好——我认为这是因为Rails直接为资产服务。在生产环境中(当我将本地dev服务器切换到

我的问题与中列举的问题类似,只是我没有使用
ckeditor
gem。我直接使用CKEditor脚本

我已将它们直接提取到
供应商/assets/javascripts/ckeditor
中,并将这些include节添加到相应的javascript清单文件中:

//= require ckeditor/ckeditor
//= require ckeditor/adapters/jquery
在开发中,它工作得非常好——我认为这是因为Rails直接为资产服务。在生产环境中(当我将本地dev服务器切换到生产环境时),编辑器不会加载(只是像上面链接的问题一样的空格),我会遇到如下加载错误:

这些路径显然是错误的,我不确定它在dev中是如何工作的,现在我想起来了


有人让这个设置正常工作了吗?或者我应该像其他人一样接受它并使用gem吗?

经过几个小时的修补,我发现我的问题是双重的

首先,您可以设置一个CKEditor全局选项来告诉它基本安装路径所在的位置。为了设置这一点,我修改了我的
application.js
,添加了以下两行:

//= require_self
CKEDITOR_BASEPATH = "/assets/ckeditor/";
其次,我的环境配置并没有设置为预编译两个CKEditor文件。因此,在
config/environments/production.rb
中,我将
ckeditor/config.js
ckeditor/contents.css
添加到传递给
config.assets.precompile
的文件数组中

编辑:我不得不向预编译列表中添加一些文件,而不仅仅是这里列出的文件。一个全面的列表可能会产生误导,因为这些文件中的大多数都来自自定义主题。加载Chrome Inspector或Firebug,查看仍然返回404的资产列表,将它们添加到数组中,重新编译,然后查看是否修复了它,这相当简单