2011-06-30 37 views
5

tengo un modelo que tiene:CarrierWave URL de la imagen

mount_uploader :image, ImageUploader 

Al cargar una imagen que quiero para recuperar algo de anchura, altura y algunos datos EXIF ​​de la imagen. En un filtro antes de que estoy llamando self.image.url pero esto devolverá algo como:

/uploads/tmp/20110630-1316-10507-7899/emerica_wildinthestreets.jpg

El problema es que cuando intento abrir esta imagen usando:

image = MiniMagick::Image.open(self.image.url) 

me sale "No existe el fichero o directorio - /uploads/tmp/20110630-1312-10507-6638/emerica_wildinthestreets.jpg". Parece que la imagen ya se movió de la carpeta tmp a su ubicación final, pero self.image.url no refleja este cambio.

También he intentado esto en un método after_save pero el resultado es el mismo. ¿Algunas ideas?

Respuesta

5

Resulta que necesitaba para añadir "# {} Rails.root.to_s/public /" para self.image.url

+4

Una solución más correcta sería self.image.path –

Cuestiones relacionadas