> comento: > > estoy subiendo imágenes al servidor pero no las guardo como archivo, > las almaceno directamente en la base de datos en campos BLOD. > > tengo los script para cambiar el tamaño de la imagen y crear thumber. > pero estos solo funcionan cuando el archivo esta almacenado en un > directorio. > no deseo crear archivos temporales y guardar la imagen como archivo, > aplicar > el proceso y luego > cargarla a la base de datos. > > deseo poder guardar y redimencionar directamente en la base de datos. > > alguien sabe como? > > creo que mi fallo radica en tener los script y en realidad no saber > como funcionan :S > de otra forma creo que ya hubiera dado con la solución :(
¿Usas PIL? Tanto el método im.save como el Image.open aceptan objetos archivo, entendiendo como tales cualquier objeto que implemente los métodos seek tell y (read o write) http://www.pythonware.com/library/pil/handbook/image.htm#Image.save http://www.pythonware.com/library/pil/handbook/image.htm#open Así podrías hacerlo sin modificar el código que se encarga de las imágenes, simplemente pasandole en lugar de la ruta al archivo temporal, un objeto que se encarge de hacer el write en la bd. De todos modos posiblemente sea más sencillo que tu código de redimensionar acepte y devuelva strings en vez de archivos, así que mírate los siguientes métodos: http://www.pythonware.com/library/pil/handbook/image.htm#Image.tostring http://www.pythonware.com/library/pil/handbook/image.htm#Image.fromstring Reference guide Rules the world! _______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/