2016-09-08 123 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)