我使用ckeditor gem。在将ckeditor文件复制到公共文件夹之后,最后一切都工作了。但是,在资产预编译突然之后,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 / skin。
Soooooo
我尝试换到月亮皮肤,因为那是随宝石一起提供的。但是,我无法获取要编译的自定义app / assets / ckeditor / config.js文件。 app / public / assets / ckeditor / config.js总是看起来不一样。我删除它并重新编译,它又被打破了。有任何想法吗?非常感谢!
答案 0 :(得分:0)
我仍然不确定问题的根源。然而,解决了它。
将我的ckeditor文件从app / assets / ckeditor移动到app / assets / javascripts / ckeditor后,它再次开始预编译,这很好,因为之后我能够使用我的配置.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 %>
所以,现在它有效。祝大家好运!