【发布时间】:2014-04-20 23:48:52
【问题描述】:
在 Heroku 上使用 Rails 4,预编译资产并添加指纹。
我可以使用以下方法从我的 erb 文件中访问资产:
<%= asset-url("image_name.jpg") %>
但是,我正在对控制器进行 ajax 调用以获取对象列表,并从每个对象构建图像名称,例如image-1.jpg、image-2.jpg,这里的数字来自 javascript 变量。这些图像位于 assets/images 目录中。
如何使用 javascript 变量链接到它们,如下所示:
<%= asset-url("image-javascriptVariable.jpg") %>
这显然行不通,因为它早在客户端渲染 javascript 变量之前就在服务器上渲染了。
注意:我知道我不能简单地对这些图像进行预处理/指纹识别并将它们放在公共/资产中并以静态方式提供它们。但是,我想使用指纹来打破更新缓存。
【问题讨论】:
-
使用不同的缓存中断策略,例如添加变量名或 jQuerys ajax 方法hungred.com/how-to/tutorial-stop-caching-jquery-javascript 是不是没有选择?
标签: javascript ruby-on-rails heroku ruby-on-rails-4 asset-pipeline