【发布时间】:2014-04-04 17:11:44
【问题描述】:
通过阅读 Rails 4 Asset Pipeline 指南,您可以为 3rd 方资产做什么。比如我包含了一个别人开发的css文件,我是否需要通过并确保这样的事情
.logo {
background-image:url('<%= asset_path("logo.png") %> ');
}
是用erb语法定义的吗? IE 如果只是引用 /assets/logo.png 而没有 ERB 语法怎么办?
也许我会丢失资产指纹? IE 如果我加载没有指纹的静态资产,浏览器可能总是缓存该资产 - 无限期。
如果它指向管道中的资产并且该资产已更新,那么指纹也会更新,因此它会在加载时在远程浏览器上更新。
我在阅读 Heroku Rails 4 资产管道指南时遇到了这种困惑。
在 Rails 4 中,sprockets 只会产生摘要文件名。这意味着您必须使用这样的 ERB 助手来引用您的资产:
<%= asset_path('logo.png') %>
确保为 app/assets 中使用 ERB 帮助程序的所有文件添加 .erb 扩展名。所以 application.css 需要是 application.css.erb。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-4