图片未在Heroku Rails 5 App

时间:2017-10-20 04:34:47

标签: ruby heroku ruby-on-rails-5 asset-pipeline

我在使用Heroku上的Rails 5从我的Asset管道提供静态文件时遇到问题。我看过其他问题但似乎没有解决问题。

我明白了         HomeController #index缺少此请求格式的模板         和变种。 request.formats:[“image / png”] request.variant:[]

我的config / production.rb

    config.assets.compile = false

    config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present?

    if ENV["RAILS_LOG_TO_STDOUT"].present?
     logger           = ActiveSupport::Logger.new(STDOUT)
     logger.formatter = config.log_formatter
     config.logger = ActiveSupport::TaggedLogging.new(logger)
    end

2 个答案:

答案 0 :(得分:2)

在本地编译所有资产并推送到heroku。

请尝试以下步骤:

  1. 更改config / environments / production.rb中的行   config.assets.compile = true
  2. 运行命令:

    RAILS_ENV=production rake assets:precompile

  3. 将manifest.rb的所有编译资产推送到heroku

答案 1 :(得分:0)

在本地编译资产不是一种好的做法,应该避免,因为工件不应该在版本控制中。我在尝试使用 sass 设置背景图片时遇到了同样的问题,并使用String mEventKey = getIntent().getStringExtra(EXTRA_POSITION); Log.d(TAG, "onCreate: current event number is: " + mEventKey); 帮助生成了正确的网址。

image-url

对于图片代码和erb css模板,有background: image-url('my-image.png') no-repeat center;image_path rails帮助程序。