【问题标题】:Rails 4.2: "Assets should not be requested directly without their digests"Rails 4.2:“不应该在没有摘要的情况下直接请求资产”
【发布时间】:2014-08-24 04:10:42
【问题描述】:

在 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。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4


    【解决方案1】:

    使用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');
    }
    

    【讨论】:

    • 相关发现请参见asset-url。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-09
    • 2015-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多