condicionales que tienen esta clase de cargadorversiones/proceso con Carrierwave
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 procesará el archivo original de 300x300 y guardar una versión pulgar.
¿Me gustaría poder hacer una versión pequeña/miniatura solo basada en un booleano en mi modelo?
Así lo hice
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
Pero siempre terminaron en el procesamiento de 50x50. Incluso cuando me ha gustado esta
def icon_only? picture
false
end
podría recibir mi sintaxis todo mal con el, pero también intenté pedir
if icon_only?
Lo que me dijeron que no había nombre del método como that.Im perdido. ..
Tengo esta parte de trabajo proceso: resize_to_limit => [50, 50],: si =>: icon_only? proceso: resize_to_limit => [300, 300],: if =>!: Icon_only? Pero siempre crea la versión de pulgar incluso la declaración a menos versión: thumb,: unless =>: icon_only? version: thumb do proceso: resize_to_limit => [50, 50] end – Jepzen
No creo ': if =>!: Icon_only?' Funcionará. Defina otra función ': not_icon_only?' O utilice un proceso proc: ': resize_to_limit => [300, 300],: if => Proc.new {! Icon_only? } ' ¿También estás seguro de que tu método 'icon_only?' Está funcionando realmente? Toma un argumento 'picture' pero luego llamas' icon_only? 'En' model'. –
Bueno, parecía un desastre, así que terminé haciendo otra clase de cargadores solo para mi ícono. Mi icono solo? El método (en el modelo) no tomó el valor recién asignado también, solo va el valor predeterminado de la tabla, así que incluso si obtuve la lógica, no sé cómo podría determinar si solo debería ser un ícono o no. Gracias por tu ayuda. – Jepzen