如何从资产管道获取资产版本字符串

时间:2016-04-05 08:38:29

标签: ruby-on-rails sprockets

我正在为rails项目添加一个非常简单的缓存脚本(JavaScript),并且需要获取rails资产版本号,以便使两者协同工作。但是我无法找到如何使用版本控制字符串。

我需要使用rails中的相关版本字符串更新下面的两个字符串(在JS文件中)。我怎样才能获得这些信息。

var urlsToCache = [
    '/css/main.css',
    '/javascript/application.js'
];

我知道我可能需要将版本字符串导出为JSON,在我的JavaScript文件中从该JSON构建数组。

感谢任何帮助或正确方向的观点。

由于

1 个答案:

答案 0 :(得分:2)

我会在服务器的json中传递它。

要实际获取指纹,您可以在资产上调用digest_path以获取MD5附加值。请参阅this SO answer,其中包含以下摘录:

[1] pry(main)> Rails.application.assets.find_asset('application.js').digest_path
=> "application-ab07585c8c7b5329878b1c51ed68831e.js"