11

我有一个使用 CKeditor 的 rails 4 应用程序。在开发模式下它工作正常,但在生产中ckeditor不会出现,并且在文本区域的位置有一个空白区域。

根据日志,缺少以下文件:

ActionController::RoutingError (No route matches [GET] "/assets/ckeditor/styles.js")

如果我预编译资产,我可以看到生成以下文件:

public/assets/ckeditor/styles-65fee53acf063b3d207bc00b4f7ce0d5.js

这是我的 application.rb 的 ckeditor 行:

config.assets.precompile += Ckeditor.assets

这似乎是 CKeditor 想要的文件,但它不是在寻找预编译的文件。我该如何解决?

4

5 回答 5

4

我已经预编译了我的资产并将我的 repo 推送到生产服务器并得到了类似的错误。并且 ckeditor 没有加载。

以下为我工作:

1)在 config > environment > productio.rb 文件下有一行 config.assets.compile = false

我将 false 更改为 true 并将代码推送到生产站点。停止并启动独角兽。现在ckeditor正在加载,这就是诀窍。

希望有帮助。

于 2014-12-30T15:10:54.670 回答
1

对于 Rails 5,您在 Gemfile gem 'ckeditor', github: 'galetahub/ckeditor' 中使用过

看这里: https ://github.com/galetahub/ckeditor/issues/719

于 2017-03-10T13:48:10.317 回答
0

您是否按照自述文件中的这些步骤进行操作?https://github.com/galetahub/ckeditor#usage-with-rails-4-assets

于 2013-11-08T17:20:55.643 回答
0

<head>在我的文件部分中指定 CKEditor BasePathapplication.html.erb解决了我的问题

<script type="text/javascript">
 var CKEDITOR_BASEPATH = '/assets/ckeditor/';
</script>
于 2015-01-06T09:54:22.527 回答
0

我有同样的问题,我已经包含了 config.assets.compile = true 并且没有工作......

最后我做了耙子

rake assets:precompile

从控制台。

如果您将图像直接上传到 AWS S3,则需要在预编译时注释掉carrierwave 或回形针初始化程序。

然后将其投入生产并运行良好!

于 2016-12-01T00:42:32.860 回答