如何链接到没有指纹的Rails资产?

时间:2014-09-17 23:31:27

标签: ruby-on-rails asset-pipeline

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

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

不幸的是,如果我想从其他网站(如博客)链接到此,我就不能依赖指纹。

我可以设置配置设置,以便在不知道指纹的情况下访问文件吗? (虽然仍然保持指纹正常Rails使用;这只会用于特殊情况)

我不想做一次性的事情,例如为特定资产创建路线,因为我需要它来处理许多资产。

1 个答案:

答案 0 :(得分:2)

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

- public
-- your_file.js

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

这对于您希望保持静态的文件(例如小部件JS或类似文件)是唯一可取的。


非摘要资产

或者,您可能希望在调用non-stupid-digest-assets之前尝试一个我从未使用过的宝石 - 一个宝石,它允许您确定哪些文件是“指纹识别”而哪些不是。

我从来没有使用过这个宝石,所以不能评论它的有效性,但看起来它会让你能够保存某些没有指纹名称的资产。这意味着您仍然可以使用Rails中提供的各种asset path helpers来调用它们,并为其他人提供该文件的直接引用:

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

然后,您就可以致电asset_path("your_file.js")