Versões condicionais / processo com Carrierwave

Eu tenho essa classe de upload

class ImageUploader < CarrierWave::Uploader::Base

  include CarrierWave::RMagick

  process :resize_to_limit => [300, 300]

  version :thumb do
    process :resize_to_limit => [50, 50]
  end

 ...

Que processará o arquivo original para 300 x 300 e salvará uma versão em miniatura.

Eu gostaria de poder fazer uma pequena versão de miniatura apenas com base em um booleano no meu modelo?

Então eu fiz isso

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

Mas sempre acabou em processamento 50x50. Mesmo quando eu fiz assim

 def icon_only? picture
   false
 end

Eu posso ter minha sintaxe errada com o: mas eu também tentei perguntar

if icon_only?

O que me disse que não havia um nome de método como esse. Perdi ...

questionAnswers(2)

yourAnswerToTheQuestion