8

我正在使用CKEditor gem。我的application.js和配置routes.rb如下:

# application.js
//= require ckeditor/init

# routes.rb
mount Ckeditor::Engine => '/ckeditor'

gem 在开发模式下工作正常,但在进入生产模式时,当浏览器请求 ckeditor 文件夹中的 js 和 css 文件时出现错误 404:

GET http://mydomain/assets/ckeditor/config.js?t=D2LI 404 (Not Found)
GET http://mydomain/assets/ckeditor/skins/moono/editor.css?t=D2LI 404 (Not Found)
GET http://mydomain/assets/ckeditor/lang/vi.js?t=D2LI 404 (Not Found)
GET http://mydomain/assets/ckeditor/styles.js?t=D2LI 404 (Not Found) 

请帮我修复我的 ckeditor 路由配置。先感谢您。

4

4 回答 4

9

您需要明确指示 Rails 在生产中预编译您的 CKEditor 资产:

# config/application.rb
config.assets.precompile += Ckeditor.assets

然后,在您的生产环境中,强制进行预编译:

rake assets:precompile:all
于 2013-07-14T06:45:45.673 回答
2

就我而言,我使用的是 Rails 4 并部署到 Heroku。我发现我必须先在本地预编译资产,然后提交/public/assets/ckeditor目录并部署。在那之后工作,虽然我真的不喜欢这个解决方案。

于 2013-10-07T12:18:46.267 回答
2

只有在 Rails 5 中找不到 lang 文件,我遇到了一些麻烦。

我必须这样做才能让它工作-> Rails.application.config.assets.precompile += %w(ckeditor/* ckeditor/lang/*)in assets.rb.

我不知道为什么第一个声明首先不只包含 lang 文件夹(它适用于适配器、插件和皮肤文件夹)。可能是虫子?

于 2016-07-24T14:41:23.770 回答
1

如果您使用的是 Rails 4,只需将 ckeditor gem 升级到最新版本(~> 4.1.0)。

在此处查看更多更新https://github.com/galetahub/ckeditor

于 2014-11-17T13:14:40.703 回答