Warunkowe wersje / proces z Carrierwave
Mam tę klasę przesyłania
class ImageUploader < CarrierWave::Uploader::Base
include CarrierWave::RMagick
process :resize_to_limit => [300, 300]
version :thumb do
process :resize_to_limit => [50, 50]
end
...
Który przetworzy oryginalny plik na 300x300 i zapisze wersję kciuka.
Chciałbym móc utworzyć na moim modelu tylko małą wersję / kciuk opartą tylko na logice?
Więc to zrobiłem
if :icon_only?
process :resize_to_limit => [50, 50]
else
process :resize_to_limit => [300, 300]
end
protected
def icon_only? picture
model.icon_only?
end
Ale zawsze kończyło się przetwarzaniem 50x50. Nawet gdy to lubiłem
def icon_only? picture
false
end
Mógłbym źle dopasować moją składnię do: ale próbowałem też pytać
if icon_only?
Który powiedział mi, że nie ma takiej nazwy metody. Straciłem ...