0

我使用ckeditor gem。在我将 ckeditor-files 复制到公共文件夹之后,上次一切正常。但是在资产预编译之后,ckeditor 突然(再次)在开发和生产中消失了。

带有“CKEDITOR_BASEPATH = '/assets/ckeditor'”的 ckeditor.js 已成功包含在我的 html 输出的标题中,但未显示 textarea。

服务器日志说:

    Served asset /ckeditor/skins/kama/editor.css - 404 Not Found (5ms)

但它同时存在于:app/assets/ckeditor/skins 和 app/public/assets/ckeditor/skins 中。

太棒了

我尝试换成月光皮肤,因为那是随宝石一起交付的。但是,我无法编译我的自定义 app/assets/ckeditor/config.js 文件。app/public/assets/ckeditor/config.js 总是看起来不同。我把它删了重新编译,又坏了。有任何想法吗?非常感谢!

4

1 回答 1

0

我仍然不确定问题的根源。不过解决了。

在将我的 ckeditor 文件从 app/assets/ckeditor 移动到 app/assets/ javascripts /ckeditor 之后,它再次开始预编译它们,这很棒,因为之后我就可以使用我的 config.js。我在公共/资产中也有一些奇怪的剩余 ckeditor 文件,我不得不删除它们。我想知道为什么从 Rails 3.2 更新到 3.2.11 似乎让我的资产管道忽略了 app/assets 中的文件夹。

第二件事:然后使用这些预编译文件,似乎在 application.js 清单中提及它们是不够的。相反,我将以下内容放入 application.html.erb 的标头中:

<script type="text/javascript">var CKEDITOR_BASEPATH = '/assets/ckeditor';</script>
<% if controller.action_name == 'edit' then %>
    <%= javascript_include_tag  "/assets/ckeditor/config", "/assets/ckeditor/init" %>
<% end %>

所以,现在它可以工作了。祝大家好运!

于 2013-03-04T19:36:15.503 回答