我有一个使用redactor(一个所见即所得编辑器)的应用程序,它在本地完美运行,当我上传它时它也可以工作,除了配置文件,它位于子文件夹中,当推送到Heroku时做任何事情。我试过预编译,使用:
RAILS_ENV=production bundle exec rake assets:precompile
和
bundle exec rake assets:precompile
我有config.assets.enabled = false
不能在Heroku上运行的config.js文件作为redactor-rails / config
包含在application.js中可能是什么问题?
答案 0 :(得分:6)
在推送之前,您是否已将config.js添加到本地git存储库?
[编辑]
还有几件事需要检查。您使用的是redactor-rails gem,如果是,那么它是否在您的gemfile中?
gem 'jquery-rails'
gem 'redactor-rails'
你的gemfile.lock是否签入了git?
[编辑2]
我现在已经对此进行了测试,实际上,redactor-rails存在问题,导致自定义配置被gem的默认设置覆盖。
在github repo上,有一个解决方案,我已在heroku上测试过,并在此复制:
rails generate redactor:config
生成文件app\assets\redactor-rails\config.js
。 这在资产管道中无法正常执行rake assets:precompile
任务 仍然会从宝石而不是应用程序中取config.js
(而不是它可以正常工作) 虽然发展)。见Overriding backend assets in production environment解决方案是创建您自己的config.js(或任何文件名),并将其放在您的>应用程序资产中的任何位置。然后,当需要redactor而不是
//= require redactor-rails
时,请使用:
//= require redactor-rails/redactor.min
//= require path/to/custom/config
适合我。希望有所帮助。 https://github.com/SammyLin/redactor-rails/issues/16