如何从CloudinaryPreloadedFile获取维度

时间:2013-10-04 19:27:06

标签: cloudinary

我需要在我的数据库中保存图像的尺寸,以帮助我以pinterest样式的图库格式渲染图像。

我用这个方法:

def update_asset_attributes
  if image.present? && image_changed?
    ap image.file
    self.image_content_type = image.file.content_type
    self.image_file_size = image.file.size
    self.image_width, self.image_height = `identify -format "%wx%h" #{image.file.path}`.split(/x/)
  end
end

但现在它说:NoMethodError - undefined method content_type for #<Cloudinary::CarrierWave::PreloadedCloudinaryFile:0x007f9834d81840>:

1 个答案:

答案 0 :(得分:2)

CloudinaryPreloadedFile目前没有此信息。你可以 -

  1. 将您自己的信息从javascript代码传递到服务器(您可以使用cloudinarydone回调data.result对象)。
  2. 使用attachinary gem。
  3. 如果每小时上传的图片数量很少,您可以使用Admin API获取资源的信息,因为它是public_id。