这让我疯了!我的应用程序在本地服务器上正常工作,但是当我上传到heroku时,css和js文件没有更新。我阅读使用rake资产预编译:预编译来修复问题,但后来我再次上传到heroku,现在我的所有资产都没有加载!我已经尝试了预编译的所有变体,安装了12factor gem,将一些配置设置从false变为true,仍然没有发生!当我看到控制台时,它说
[错误] ReferenceError:找不到变量:jQuery 全球代码(申请-38ccb09605964287831a37a0d9faf188.js,第1行)
但我确实有Jquery!它在当地工作正常!我不知道我做错了什么。
的Gemfile
gem 'bootstrap-sass-rails'
gem 'rails_12factor', group: :production
gem 'rails', '4.0.0'
gem 'sqlite3', :group => [:development, :test]
group :production do
gem 'thin'
gem 'pg'
end
gem 'sass-rails', '~> 4.0.0'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.0.0'
gem 'jquery-rails'
gem 'jbuilder', '~> 1.2'
group :doc do
# bundle exec rake doc:rails generates the API under doc/api.
gem 'sdoc', require: false
end
production.rb
config.cache_classes = true
config.eager_load = true
config.consider_all_requests_local = false
config.action_controller.perform_caching = true
config.serve_static_assets = true
config.assets.js_compressor = :uglifier
config.assets.compile = true
config.assets.digest = true
config.assets.version = '1.0'
config.log_level = :info
config.i18n.fallbacks = true
config.active_support.deprecation = :notify
config.log_formatter = ::Logger::Formatter.new
答案 0 :(得分:3)
正在运行$RAILS_ENV=production bundle exec rake assets:precompile
使我的heroku应用程序正常运行。所以我猜问题是固定的..
答案 1 :(得分:0)
简单地运行
$ bundle exec rake assets:precompile
$ git add .
$ git commit -am "assets precompiled locally"
$ git push heroku master