On Rails 4.2.0.beta1我收到错误:
不应在没有摘要的情况下直接请求资产:使用ActionView :: Helpers中的帮助程序来请求fonts / source-sans-pro.woff
样式表:
@font-face {
font-family: 'Source Sans Pro';
font-style: normal;
font-weight: 400;
src: local('Source Sans Pro'), local('SourceSansPro-Regular'), url(/assets/source-sans-pro.woff) format('woff');
}
配置为:
config.serve_static_assets = true
config.assets.js_compressor = :uglifier
config.assets.compile = true
config.assets.digest = true
config.assets.version = '1.0'
config.assets.paths << Rails.root.join('app', 'assets', 'fonts')
config.assets.precompile += %w(.svg .eot .woff .ttf)
当然我可以禁用摘要并且它再次有效,但我对使用它们很感兴趣。因此,当我需要source-sans-pro.woff
时,如何使用摘要?
请注意,我将字体放在assets/fonts
目录中,而不是public/
目录中。我没有看到图像和字体之间的区别,所以我想将它们保存在同一目录下 - app/assets
。
答案 0 :(得分:5)
使用font_path帮助程序。您必须确保样式表具有filename.css.scss
格式才能生效。
@font-face {
font-family: 'Source Sans Pro';
font-style: normal;
font-weight: 400;
src: local('Source Sans Pro'), local('SourceSansPro-Regular'), url(font_path('source-sans-pro.woff')) format('woff');
}