Rails/Heroku/Assets不包括在内

jak*_*obk 2 assets ruby-on-rails heroku asset-pipeline

我有一个使用redactor(一个所见即所得编辑器)的应用程序,它在本地完美运行,当我上传它时也可以工作,除了配置文件,它位于子文件夹中,当推送到Heroku时做任何事情.我试过预编译,使用:

RAILS_ENV=production bundle exec rake assets:precompile
Run Code Online (Sandbox Code Playgroud)

bundle exec rake assets:precompile
Run Code Online (Sandbox Code Playgroud)

我有config.assets.enabled = false

无法在Heroku上运行的config.js文件作为redactor-rails/config包含在application.js中

可能是什么问题?

Jam*_*som 6

在推送之前,您是否已将config.js添加到本地git存储库?

[编辑]

还有几件事需要检查.您使用的是redactor-rails gem吗?如果是这样,它是否在您的gemfile中?

gem 'jquery-rails'
gem 'redactor-rails'
Run Code Online (Sandbox Code Playgroud)

你的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从gem而不是应用程序中获取(不过它在开发中可以正常工作).请参阅覆盖生产环境中的后端资产

解决方案是创建自己的config.js(或任何文件名)并将其放在> app的资产中的任何位置.然后当需要redactor而不是//= require redactor-rails,使用:

//= require redactor-rails/redactor.min
//= require path/to/custom/config
Run Code Online (Sandbox Code Playgroud)

适合我.希望有所帮助.https://github.com/SammyLin/redactor-rails/issues/16