Rails 图像字符串到图像文件

发布于 2024-11-29 09:32:14 字数 137 浏览 1 评论 0原文

我目前将图像字符串(这是通过 API 提供的方式)作为二进制文件保存在我的数据库中,但我需要(创建后)将其更改为文件结构,可能使用 Paperclip/Carrierwave 和 S3。

将二进制转换为图像文件(例如 jpg)的最佳方法是什么?

I currently save image strings (this is how they are provided through API) as a binary in my database but I need to (after creation), change this to a file structure, probably using Paperclip/Carrierwave and S3.

What is the best way to convert binary to image file e.g. jpg?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

南巷近海 2024-12-06 09:32:14

这做到了这一点:

sio = StringIO.new(Base64.decode64(string))

[来源:base64照片和回形针-Rails]

This did the trick:

sio = StringIO.new(Base64.decode64(string))

[ source: base64 photo and paperclip -Rails ]

柳若烟 2024-12-06 09:32:14
file_arr = Model.find(:all)
file_arr.each do |file|
  File.open(file.name,'w'){|f| f.write(file.blob)}
end

这是我对如何做的猜测。其中 Model 是您的模型。name 是存储在数据库中的名称,.blob 是 blob 字段...您可以通过 Rails 控制台执行此操作。

这可能不是最好的答案,但它可能会给您一个开始。

file_arr = Model.find(:all)
file_arr.each do |file|
  File.open(file.name,'w'){|f| f.write(file.blob)}
end

would be my guess of how to do it. Where Model is your model .name is the name stored in the Database and .blob is the blob field...You may be able to do this via the Rails console.

This may not be the best answer but it may give you a start.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文