Fancybox将blob显示为字符串而非图像(Ruby问题?)

时间:2012-10-31 23:21:52

标签: ruby string image fancybox blob

我使用以下方法在img标签中显示从数据库(存储为长blob)获取的图像:

<img src="http://localhost:3000/show_image/265" />

show_image函数从数据库中获取图像数据,并使用img方法将其呈现为send_data标记。

将Fancybox应用到img标记时,数据显示为BLOB数据而非图像..

任何人都可以提出理由吗?或者我如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

1)你必须将fancyBox应用于链接(而不是图像),结构应该是这样的 -

<a class="fancybox" href="big_image"><img src="small_image" /></a>

示例 - http://jsfiddle.net/CYCeM/

嗯,实际上可能只有图像,但是你必须使用“data-fancybox-href”属性来指定大图像 - http://jsfiddle.net/6ZSWB/

2)看起来这个脚本无法从你的href中猜出内容类型。你必须要么 -

a)创建具有扩展名的链接,例如“http:// localhost:3000 / show_image / 265.jpg”

b)设置fancybox的内容类型,例如 - $('.fancybox').fancybox(type : 'image');

答案 1 :(得分:0)

设置:type =&gt; “image / jpg”解决了这个问题。我查找了MIME内容类型,发现它写得不正确。