Rails - Image_tag替代图像

时间:2015-06-03 19:30:28

标签: ruby ruby-on-rails-4

创建image_tag(通过rails helper)的最佳方法是显示另一个图像(如果默认图像是中断而不是文本)。它不必支持递归。如果链接断开,我只想要使用默认图像。

3 个答案:

答案 0 :(得分:2)

您可以通过JS执行此操作,此处显示为jQuery:

$('img').error(function() {
  $(this).attr('src', 'missing.png');
});

如果是特定图像,您可以将错误处理程序附加到该对象。

我不知道通过image_tag帮助器做到这一点的任何方法;您必须从应用程序向src URL发出请求并检查错误。不过,我确保在你走这条路之前确实是你需要做的事情,但这取决于你的要求。

答案 1 :(得分:1)

post使用background-image CSS属性指向默认图片,如果找不到图片,则会使用该图片。

答案 2 :(得分:0)

我遇到了类似的问题,我在桌子里面有几张缩略图,我需要检查一下这张图片是否缺失然后显示默认图片。

为此,我使用带有辅助方法的image_tag。在帮助方法中,我用File.exist检查?如果文件存在。如果是,那么我将图像作为字符串返回到image_tag,否则我返回默认图像的路径。