我今年一直在使用turbolinks,但最近我遇到了这个烦人的bug。通过carrierwave上传的图像在第一个请求中以绝对URL加载到站点中,但是当您通过turbolinks开始在站点中浏览时,所有载波图像都会更改为相对路径。 <%= image_tag“image.jpg%>元素工作正常,但图片作为CSS背景图片加载,它们不会出现。这显然只发生在chrome上(我有Versión31.0.1650.57米)。我通过控制台进行跟踪,所有图像都加载到文档中,所以我去了Inspector并禁用/启用了特定元素的属性'background-image',并且发生了魔法:图像出现了。
我正在使用rails 3.2.14,带有turbolinks:
gem 'turbolinks', '1.3.1'
gem 'jquery-turbolinks', '2.0.1'
我已经在Firefox 25.0.1上对此进行了测试,它运行正常。
有什么建议吗?感谢
答案 0 :(得分:15)
我只是想通了,如果你使用绝对网址的背景图片,那就是bug dessapears。 这就是我在帮助器中调用carrierwave图像的方式:
img = ProductImage.find(id)
"#{request.protocol}#{request.host_with_port}#{img.photo}"
photo是与carrierwave uploader一起使用的属性。