空白に戻ってきたオブジェクトがあります。これが私がやりたいことです
@photo = [] # this is coming back blank, but it won't do the correct comparison in the ||
@sanitized_photos = PhotoPresenter.new(@photo).to_json || PhotoPresenter.default_layout.to_json
力強いifステートメントなしでそれを機能させる方法についての考え
更新:::これは私のプレゼンターのコピーで、かなりうまく機能します。ここにコレクションロジックを配置したことはわかっていますが、最もクリーンな方法で機能します
class PhotoPresenter < Presenter
def initialize(photo)
@photo = photo
end
def to_gallery
{
"thumb" => @photo.image.url(:thumb),
"image" => @photo.image.url(:large),
"big" => @photo.image.url,
"title" => @photo.attachable.name
}
end
def self.blank_gallery
{
"thumb" => help.polymorphic_photo_url(nil, :large),
"image" => help.polymorphic_photo_url(nil, :large),
"big" => help.polymorphic_photo_url(nil, :large),
"title" => "No photo provided"
}
end
def self.as_gallery(photos)
unless photos.blank?
photos.collect{|object| self.new(object).to_gallery}.to_json
else
blank_gallery.to_json
end
end
end