sis*_*ssy 9 ruby-on-rails asset-pipeline ruby-on-rails-4
我无法理解为什么我的css文件没有使用辅助方法将摘要附加到我的资产 image_url
我的资产已正确预先推荐,文件确实包含摘要.我也可以手动访问它们(使用消化的URL).最奇怪的是,它一开始就有效.
这是我的配置:
config.assets.js_compressor = :uglifier
config.assets.compile = false
config.assets.digest = true
config.assets.version = '1.0'
config.serve_static_assets = false #also tried true
Run Code Online (Sandbox Code Playgroud)
这是我的application.css:*= require_tree.
这是common.scss文件,用于包含图像:
body{
background: image_url('bg.jpg');
font-family: 'Lato', sans-serif;
overflow-x: hidden;
}
Run Code Online (Sandbox Code Playgroud)
图像以及样式表位于资产/图像和资产/样式表中的子文件夹中.
在这里我的宝石:
gem 'rails', '4.0.0'
gem 'sass-rails', '~> 4.0.0'
Run Code Online (Sandbox Code Playgroud)
我正在使用capistrano部署,但我不认为这是一个与capistrano相关的问题,资产编制得很好.
编辑 到目前为止我(尝试失败)的尝试:
image-url('image.jpg'); -> http://www.mydomain.it/images/image.jpg
image_url('image.jpg'); -> same as above
url(image-path('header.jpg')); -> http://www.mydomain.it/images/image.jpg
asset-url('image.jpg', image); -> http://www.mydomain.it/image.jpg
Run Code Online (Sandbox Code Playgroud)
问题仍然存在:资产已编译但未经摘要请求.
编辑
关注这个问题Rails 4 image-path,image-url和asset-url不再适用于SCSS文件我移动了我的资产并使用asset-url的组合并将我的资产放在/ public文件夹中,背景图像正常工作,甚至虽然问题仍然存在,因为应用程序没有使用图像的带时间戳的版本.所以只有一个(不是好的,也不是坏的)解决方法.
应该使用asset_path. 另外,它需要在 ERB 标签下运行,因为 SCSS 不编译 asset_path。重命名common.scss为common.scss.erb
.body { background-image: url(<%= asset_path 'bg.jpg' %>) }
Run Code Online (Sandbox Code Playgroud)
在这里阅读更多内容。
| 归档时间: |
|
| 查看次数: |
5399 次 |
| 最近记录: |