2011-11-22 34 views
2

我有一个相似的问题之一this question列举,但我不使用ckeditor宝石。我直接使用CKEditor脚本。的Rails 3.1.2 CKEditor的供应商脚本

我已经提取他们直接进入vendor/assets/javascripts/ckeditor,并添加这些包括节到合适的JavaScript manifest文件:

//= require ckeditor/ckeditor 
//= require ckeditor/adapters/jquery 

在发展,它运行完美 - 我认为由于Rails是直接服务于资产。在生产中(当我在我的本地开发服务器切换到生产环境),编辑器不会加载(只是空白空间,如上面链接的问题),我得到这样的加载错误:

Load errors

那些路径显然是错误的,即使在开发中,我也不确定它是如何工作的,现在我想到了它。

有没有人获得这样的设置才能正常工作,或者我应该吸吮它,只需要使用像其他人一样,似乎宝石?

回答

4

修修补补的几个小时之后,我想通了,我的问题是双重的。

首先,是您可以设置来告诉它的基础安装位置路径驻留在CKEditor的全局选项。要设置,我改变了我的application.js添加这两条线:

//= require_self 
CKEDITOR_BASEPATH = "/assets/ckeditor/"; 

其次,我的环境配置未设置为预编译夫妇CKEditor的文件。因此,在config/environments/production.rb,我加ckeditor/config.jsckeditor/contents.css向我传递给config.assets.precompile文件的阵列。

编辑:我有几个更多的文件添加到的不仅仅是这里列出的预编译列表。综合列表会有误导性,因为大多数文件都来自自定义主题。加载Chrome Inspector或Firebug非常简单,并查看仍然返回404的资产列表,将它们添加到数组中,重新编译,然后查看是否修复了它。