【发布时间】:2013-06-30 07:41:18
【问题描述】:
我想做以下事情
if build?
assetPath = "//cdn.domain.com/assets"
else
assetPath = "assets"
end
尝试所有组合并到处阅读,但此刻只是难住了
ruby 和中间人 - 仍在学习。
【问题讨论】:
我想做以下事情
if build?
assetPath = "//cdn.domain.com/assets"
else
assetPath = "assets"
end
尝试所有组合并到处阅读,但此刻只是难住了
ruby 和中间人 - 仍在学习。
【问题讨论】:
您是否在config.rb 中尝试此操作?如果没有,你应该这样做。
已经有一个您可能想要使用的设置...
set :css_dir, 'assets'
...并在构建时更改:
configure :build do
set :css_dir, '//cdn.domain.com/assets'
end
你知道Asset helpers吗?你可以使用...
<%= stylesheet_link_tag 'foo.css' %>
...在您的 (ERB) 模板中。
在开发时应该给你...
<link href="/assets/foo.css" media="screen" rel="stylesheet" type="text/css" />
...在您的构建中:
<link href="//cdn.domain.com/assets/foo.css" media="screen" rel="stylesheet" type="text/css" />
【讨论】:
我实际上对早期答案有疑问。要实际更改资产路径以使用 CloudFront 等 CDN,我必须执行以下操作:
# Fingerprint assets
activate :asset_hash
# Enable Asset Hosts
activate :asset_host
set :asset_host do |asset|
'//d23xxk856.cloudfront.net'.to_s
end
【讨论】: