Rails 4 在 scss 中配置和 erb 用于条件云端路径
Rails 4 configuration and erb in scss for conditional cloudfront paths
我正在尝试将动态云端资产完整路径添加到我的 scss 中。路径根据环境(暂存等)而变化
mystyle.scss
.some-image {background-image: url(asset_path("#{Rails.configuration.adjusted_s3_cloudfront_path}landing/this-image.jpg"))}
或mystyle.scss
.some-image {background-image: url(Rails.configuration.adjusted_s3_cloudfront_path('/landing/this-image.jpg'))}
或mystyle.scss.erb
.some-image {background-image: url(<% Rails.configuration.adjusted_s3_cloudfront_path %>"/landing/this-image.jpg")}
development.rb
config.adjusted_s3_cloudfront_path = "https://somecloufrontnumber.cloudfront.net"
production.rb
config.adjusted_s3_cloudfront_path = "https://#{ENV['S3_CLOUDFRONT_URL']}"
为什么不删除 config.adjusted_s3_cloudfront_path = "https://#{ENV['S3_CLOUDFRONT_URL']}"
以支持在 app/controllers/application.rb
中声明助手?
.some-image {
background-image: url(<%= cloudfront_path('landing/this-image.jpg') %>)
}
app/controller/application.rb
class ApplicationController < ActionController::Base
def cloudfront_path(asset_uri)
return ENV['S3_CLOUDFRONT_URL'] + 'asset_url'
end
end
我正在尝试将动态云端资产完整路径添加到我的 scss 中。路径根据环境(暂存等)而变化
mystyle.scss
.some-image {background-image: url(asset_path("#{Rails.configuration.adjusted_s3_cloudfront_path}landing/this-image.jpg"))}
或mystyle.scss
.some-image {background-image: url(Rails.configuration.adjusted_s3_cloudfront_path('/landing/this-image.jpg'))}
或mystyle.scss.erb
.some-image {background-image: url(<% Rails.configuration.adjusted_s3_cloudfront_path %>"/landing/this-image.jpg")}
development.rb
config.adjusted_s3_cloudfront_path = "https://somecloufrontnumber.cloudfront.net"
production.rb
config.adjusted_s3_cloudfront_path = "https://#{ENV['S3_CLOUDFRONT_URL']}"
为什么不删除 config.adjusted_s3_cloudfront_path = "https://#{ENV['S3_CLOUDFRONT_URL']}"
以支持在 app/controllers/application.rb
中声明助手?
.some-image {
background-image: url(<%= cloudfront_path('landing/this-image.jpg') %>)
}
app/controller/application.rb
class ApplicationController < ActionController::Base
def cloudfront_path(asset_uri)
return ENV['S3_CLOUDFRONT_URL'] + 'asset_url'
end
end