2016-09-08 92 views
1

我正在尝试检索回形针图像的尺寸。我尝试将方法widthheight应用于我的每个Imagemodel实例,但这些返回错误。检索回形针图像的尺寸

然后我试图从这篇文章中得到启示:https://github.com/thoughtbot/paperclip/wiki/Extracting-image-dimensions

并在控制台中起到了位有:

image = Imagemodel.first 
geometry = Paperclip::Geometry.from_file(image) 

虽然我得到了控制台以下错误

Paperclip::Errors::NotIdentifiedByImageMagickError: 

所以我有点困惑......我很高兴地将高度和宽度添加到我的表中的特定字段(而是在控制器中的创建操作而不是模型级别)或直接访问我的视图或控制器中的尺寸...

+1

你确定实际上是经过图像。 Iv刚刚通过控制台,如果传递的文件实际上是空白的,我可以像你一样提出相同的错误。 – DMH

+0

你是对的。我检索了完整的模型实例,其中包含实际图像顶部的不同字段。我在控制台中执行了'image = image.image',几何位返回了预期的图像大小。现在我可以在我的视图中使用或者根据需要添加一些列。 – Maxence

+0

真棒很高兴它有帮助。我在下面的评论中补充了我所说的答案。 – DMH

回答

2

看起来你并没有传递图像,而是实际上是记录本身。

试试这个:

image = ImageModel.first.attachment # this assumes the actual image is named attachment 
geometry = Paperclip::Geometry.from_file(image) # will return e.g. => 300x357 
1

在什么轨道4,5工作对我来说是:

image = my_image_model.my_attachment.queued_for_write[:original] 
Paperclip::Geometry.from_file(image)