0

我需要将图像的尺寸保存在我的数据库中,以帮助我以 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>:

4

1 回答 1

2

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

  1. 自己将信息从 javascript 代码传递到服务器(可以使用 cloudinarydone 回调 data.result 对象)。
  2. 使用附件宝石。
  3. 如果每小时上传的图片数量很少,您可以使用Admin API获取资源的信息(给定它是 public_id)。
于 2013-10-05T14:03:30.847 回答