也许是一个非常愚蠢的问题,请不要为此标记我,但我终于让 Heroku 使用asset_sync 在我的 S3 存储桶中编译它的静态资产。
现在我怎么知道这些资产实际上是从那里提供的,我认为没有任何魔法可以将它们从 s3 中拉出来?我必须为每个带有前缀的资产设置路径
https://s3-eu-west-1.amazonaws.com/pathto/asset
有没有办法在 sinatra 中明确设置它,我不必手动更改每个资产吗?那太傻了。
assets_sync 文档说要在 rails 中使用它
config.action_controller.asset_host = "//#{ENV['FOG_DIRECTORY']}.s3.amazonaws.com"
但我不确定如何在 sinatra 中设置它
编辑
require 'bundler/setup'
Bundler.require(:default)
require 'active_support/core_ext'
require './config/env' if File.exists?('config/env.rb')
require './config/config'
require "rubygems"
require 'sinatra'
configure :development do
AssetSync.config.action_controller.asset_host = "//#{ENV['FOG_DIRECTORY']}.s3.amazonaws.com"
end
get '/' do
erb :index
end
get '/about' do
erb :about
end
这会在控制台中出现以下错误
undefined method `action_controller' for #<AssetSync::Config:0x24d1238> (NoMethodError)