RMagickを使って画像を指定したバージョンで保存していて、
ユーザ画像の場合、以下のようにしてオリジナルの画像とサムネイル画像という二種類を保存しています。
# Process files as they are uploaded: process :resize_to_fill => [150, 150, gravity = ::Magick::CenterGravity] # Create different versions of your uploaded files: version :thumb do process :resize_to_fill => [40, 40, gravity = ::Magick::CenterGravity] end
ユーザ画面で、プロフィール画像を表示する部分とthumbバージョンを表示する部分があり、
さらに、ユーザが画像を持っている場合はそれを読み込んで、もしユーザが画像を持っていない場合はデフォルトでアセットに用意してある画像を読み込むようにするために、users_helper.rbの中でに以下のように記述してあります。
def user_image(user) user.image.present? ? user.image : asset_path('icons/user.jpg') end
そしてviewファイルでそれらを表示したいのですが、
user_imageというヘルパーの中で定義したメソッドを使わなければ、そのユーザが画像を持っている、いないで表示の条件分岐がされないので、
<%= user_image(user).thumb =>
というように表示したいのですができません。
毎回条件を判断し、かつ柔軟に画像をバージョン別で表示するにはどのようにしたらよろしいでしょうか。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/02/23 03:26