質問

サムネイル画像の幅と高さを取得する方法上の任意のアイデア? photo.widthは、元の写真の幅を返します。私はちょうどそのオブジェクトにアクセスするかどうかはわかりません、データベース内のサムネイルの幅を格納しています。

は動作しません。

<%= image_tag photo.authenticated_s3_url(:medium),
              :width => 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 %>
役に立ちましたか?

解決

デフォルトでは、attachment_fuはURLのみのような情報を取得するために、テーブルから親の写真をロードします。あなたは、サムネイルオプションを渡すとき、それは単に拡張子の前にファイル名の末尾に適切なサイズを追加します。

あなたのサイズを取得したい場合は、

、あなたが何かのようにテーブルにそれをルックアップするために必要になるだろう、Photo.find_by_parent_id(photo.id、:条件=> [「?サムネイル=」、「thumbnail_class_name」 ])幅

あなたが頻繁に実行されるだろう何のためにこれを使用することになるだろう、少なくとも場合は、事前に写真の幅を知る方がいいでしょう。

他のヒント

 :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 
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top