Ruby on rails 附件(小图宽度)

Ruby on rails 附件(小图宽度),ruby-on-rails,ruby,thumbnails,attachment-fu,Ruby On Rails,Ruby,Thumbnails,Attachment Fu,关于如何获得缩略图的宽度和高度有什么想法吗?photo.width返回原始照片的宽度。我将缩略图的宽度存储在数据库中,我只是不确定如何访问该对象 不起作用: <%= image_tag photo.authenticated_s3_url(:medium), :width => photo.width, :height => photo.height %> photo.width, :height=>photo.h

关于如何获得缩略图的宽度和高度有什么想法吗?photo.width返回原始照片的宽度。我将缩略图的宽度存储在数据库中,我只是不确定如何访问该对象

不起作用:

<%= image_tag photo.authenticated_s3_url(:medium),
              :width => photo.width,
              :height => photo.height %>
photo.width,
:height=>photo.height%>
这也不是:

<%= image_tag photo.authenticated_s3_url(:medium),
              :width => photo.authenticated_s3_url(:medium).width,
              :height => photo.authenticated_s3_url(:medium).height %>
photo.authenticated\u s3\u url(:中等)。宽度,
:height=>photo.authenticated\u s3\u url(:medium)。height%>

默认情况下,附件仅从表中加载父照片以获取url等信息。当您向其传递缩略图选项时,它只需在扩展名之前的文件名末尾附加适当的大小

如果您想获得大小,需要在表中查找类似Photo.find_by_parent_id(Photo.id,:conditions=>['thumbnail=?','thumbnail_class_name'])。width的内容

你最好事先知道照片的宽度,至少如果你打算用它来做任何经常运行的事情

 :thumbnails => { :crop_200x200 => 'c200x200',
              :default_200x200 => '200x200',
              :ex_200x200 => '200x200!',
              :gt_200x200 => '200x200>',
              :lt_200x200 => '200x200<'}
tname = 'crop_200x200'
height= @picture.thumbnails.select{ |r| r.thumbnail ==  tname }.first.height 
width= @picture.thumbnails.select{ |r| r.thumbnail == tname }.first.width