Ruby Heroku Rails 5应用程序上未提供图像
我在Heroku上使用Rails 5从资产管道中提供静态文件时遇到问题。我看过其他问题,但似乎没有一个能解决这个问题 我明白了 HomeController#索引缺少此请求格式的模板 和变体。request.formats:[“image/png”]request.variant:[] 我的配置/production.rbRuby Heroku Rails 5应用程序上未提供图像,ruby,heroku,ruby-on-rails-5,asset-pipeline,Ruby,Heroku,Ruby On Rails 5,Asset Pipeline,我在Heroku上使用Rails 5从资产管道中提供静态文件时遇到问题。我看过其他问题,但似乎没有一个能解决这个问题 我明白了 HomeController#索引缺少此请求格式的模板 和变体。request.formats:[“image/png”]request.variant:[] 我的配置/production.rb config.assets.compile = false config.public_file_server.enabled = ENV['RAILS_S
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
本地编译所有资产并推送到heroku 尝试以下步骤:
config.assets.compile=true
RAILS\u ENV=生产rake资产:预编译
本地编译资产不是一个好的实践,应该避免,因为工件不应该在版本控制中。在尝试使用sass设置背景图像并使用
图像url
帮助程序生成正确的url时,我遇到了相同的问题
background:image url('my-image.png')无重复中心代码>
对于图像标签和erb css模板,有image\u路径
和image\u标签
rails帮助程序。错误消息缺少模板…
告诉您rails找到了匹配的路由,但它会导致控制器方法。因此,您的问题可能与routes.rb
或文件命名有关。丢失的文件在哪里(在公共
或应用程序/资产
中)?如何链接视图中的文件?在呈现的HTML中生成的路径是什么样子的?您的config/routes.rb
外观如何?RAILS\u SERVE\u STATIC\u文件是否在Heroku上实际设置?编译的资产和工件不应处于版本控制中。