【问题标题】:How to link to a Rails asset without fingerprint?如何在没有指纹的情况下链接到 Rails 资产?
【发布时间】:2014-09-18 16:29:40
【问题描述】:

在 Rails 中,我的资产添加了指纹,例如

mysite.com/assets/something/base-216123123asdfasd20a.css

很遗憾,如果我想从另一个网站(如博客)链接到此链接,我不能依赖指纹。

是否有我可以设置的配置设置,以便我可以在不知道文件指纹的情况下访问文件? (虽然仍然保留指纹以供正常的 Rails 使用;这仅用于特殊情况)

我不想做一次性的事情,比如为特定资产创建路线,因为很多资产都需要它。

【问题讨论】:

标签: ruby-on-rails asset-pipeline


【解决方案1】:

最简单的方法是将文件直接放入public文件夹:

- public
-- your_file.js

然后必须通过直接引用您的 URL 来调用它 = http://domain.com/your_file.js

这仅适用于您希望保持静态的文件(例如小部件 JS 或类似文件)。


非摘要资产

或者,您可能希望尝试一个我以前从未使用过的 gem,名为 non-stupid-digest-assets - 一个允许您确定哪些文件是“指纹”,哪些不是。

我从未使用过此 gem,因此无法评论其有效性,但看起来它可以让您在没有指纹名称的情况下保存某些资产。这意味着您仍然可以使用 Rails 中提供的各种 asset path helpers 调用它们,并为其他人提供文件的直接引用:

#config/initializers/non_digest_assets.rb
NonStupidDigestAssets.whitelist = ["your_file.js"]

然后您就可以拨打asset_path("your_file.js")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-05
    • 1970-01-01
    • 1970-01-01
    • 2021-09-20
    • 2013-05-23
    相关资源
    最近更新 更多