【问题标题】:How do I get dimensions from a CloudinaryPreloadedFile如何从 CloudinaryPreloadedFile 获取维度
【发布时间】:2013-10-11 22:13:18
【问题描述】:

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

【问题讨论】:

    标签: cloudinary


    【解决方案1】:

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

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

    【讨论】:

    • 我应该提到我正在使用 CarrierWave。这会带来其他选择吗?
    • 以上答案适用于使用CarrierWave的情况。
    • 好的,我将使用选项 #1。谢谢!
    猜你喜欢
    • 2023-03-29
    • 2016-04-22
    • 2012-11-28
    • 1970-01-01
    • 2023-03-26
    • 2011-04-19
    • 2013-08-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多