出于某种原因,我尝试以各种方式获取图像的网址。我正在使用回形针。他们都没有工作。
我试过
img.image.url
img.image.url(:thumbnails)
img.image.url(:display)
...当我尝试img.id时,id返回正常,然后打印。当我将image_tag放在它之前时,图像也会显示。但是,我正在尝试预加载图像......我需要确切的网址,而且它不会返回:(。
编辑==============
这就是我的js函数:
onLoadScroller: function() {
// preload images here
id = <%= @other_images[4].id %>;
alert(id);
var url = <%= @other_images[4].image.url %>;
alert(url);
img = new Image;
img.src = <%= @other_images[4].image.url %>;
alert(img.src);
},
我很好地回复了id,但是我没有看到任何警告弹出url或img。我确实看到从控制台弹出正确的URL。所以这个应该是正确的做法。我不确定是什么打破了javascript?!
我的模型看起来像这样:
class Image&lt;的ActiveRecord ::基
has_attached_file :image, :styles => { :display => "500x500>",
:thumbnail => "95x95>"},
:default_style => :display
更新+++++++++++++
似乎img.src在渲染的代码中正确运行,但由于某种原因我得到“Uncaught ReferenceError:original is not defined”,阻止警报被触发。
答案 0 :(得分:1)
img.src = "<%= @other_images[4].image.url %>";
答案 1 :(得分:0)
如果您在image_tag
之前正确显示图片,那么您的电话 会返回确切的网址(因为它足以让浏览器下载图片)。我也在我的应用程序中使用了paperclip,我得到的URL与你给出的完全相同。
我建议您在JS代码中查找错误,或者在您尝试预加载图像的任何地方。