无法使data_uri在mongoid-grid_fs gem中工作

时间:2015-10-26 11:07:49

标签: ruby mongodb mongoid gridfs

我将图像存储在Mongodb中的fs.files和fs.chunks集合中,并希望在我使用Ruby on Rails构建的网站上呈现这些图像。

我已经安装了mongoid-grid_fs gem(https://github.com/ahoward/mongoid-grid_fs)和mongoid gem(4.0.0)并尝试在rails控制台上测试它,但图像的数据uris似乎没有工作。

f = Mongoid::GridFs.get('551dd9bde4b0adc8adcebc27')
=> #<Mongoid::GridFs::Fs::File _id: 551dd9bde4b0adc8adcebc27, length: 1793437, chunkSize: 261120, uploadDate: 2015-04-03 00:07:25 UTC, md5: "4deeaab5116771bc838d522b63712423", filename: "f54f40db-50a6-474d-9310-bd42fd44dab5", contentType: "application/octet-stream", aliases: nil, metadata: {"_id"=>"f54f40db-50a6-474d-9310-bd42fd44dab5", "media_id"=>"e916e264-61a9-4d69-8b70-4834cbcae75e", "size"=>1793437, "content_type"=>"application/octet-stream"}> 
f.data_uri
=> "data:application/octet-stream;base64,IzxNb25nb2lkOjpHcmlkRnM6OkZzOjpGaWxlOjB4MDAwMDAwMDQ1OGQ1Mjg+"

然后,当我将数据uri粘贴到浏览器上时,下载了一个文件。当我打开它时,只有如下所示的一行。

"#<Mongoid::GridFs::Fs::File:0x0000000458d528>"

当我使用decode64为数据uri返回控制台时,出现了相同的行。

Base64.decode64('IzxNb25nb2lkOjpHcmlkRnM6OkZzOjpGaWxlOjB4MDAwMDAwMDQ1OGQ1Mjg+')
=>"#<Mongoid::GridFs::Fs::File:0x0000000458d528>"

我对Mongodb不太熟悉,想知道如何获得图像的工作数据uris。非常感谢任何帮助,非常感谢〜!

0 个答案:

没有答案