使用回形针保存blob对象

时间:2015-04-25 14:39:02

标签: ruby-on-rails paperclip blob

我有一个数据uri,我想将其上传到服务器并将其存储为回形针图像附件。所以我使用这个link上的信息将数据uri转换为blob,然后使用FormData将其上传到服务器。 我的coffeescript文件看起来像这样

dataURLtoBlob = (dataURL) ->
  binary = atob dataURL.split(',')[1]
  array = []
  i = 0
  while i < binary.length
    array.push binary.charCodeAt(i)
    i++
  return new Blob [new Uint8Array(array)], {type: 'image/png'}

file = dataURLtoBlob(imageSrc)
fd = new FormData()
fd.append "image", file
$.ajax({
   url: "/posts",
   type: "POST",
   data: fd,
   processData: false,
   contentType: false,
});

这是我控制器中的创建动作

image = params[:image]
name = SecureRandom.hex + "png"
File.open("#{Rails.root}/public/uploads/#{name}", 'wb') do |f|
  f.write(image.read)
end

这非常适合将图像存储在服务器上。但是如何将它与回形针集成,即为这些图像生成缩略图,网址?提前谢谢。

1 个答案:

答案 0 :(得分:0)

同一件事也来了。

检查paperclip_database可能更好,这对我来说很好。

https://github.com/softace/paperclip_database