【发布时间】:2018-04-01 05:32:45
【问题描述】:
我在 Heroku 上使用 Rails 5 从我的资产管道提供静态文件时遇到问题。我查看了其他问题,但似乎都没有解决问题。
我明白了 HomeController#index 缺少此请求格式的模板 和变体。 request.formats: ["image/png"] request.variant: []
我的配置/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
【问题讨论】:
-
错误消息
missing a template...告诉您Rails 找到了匹配的路由,但它导致了控制器方法。因此,您的问题可能与您的routes.rb或文件命名有关。丢失的文件在哪里(public或app/assets)?你如何链接视图中的文件?呈现的 HTML 中生成的路径如何?你的config/routes.rb怎么样?RAILS_SERVE_STATIC_FILES是否真的设置在 Heroku 上?
标签: ruby heroku ruby-on-rails-5 asset-pipeline