Estoy desarrollando un proyecto en rails que va a tener mucha subida de
archivos.Ahora tengo implementado un sistema de upload con merb para
hacer
el upload handling.
Pero en este momento no se si será mejor usar rails y poner un proceso
de
backgroundRb para levantar un par de mongrel que se haga cargo de eso,
no se si sea necesario cargar otro Framework solo para subir imagenes,
o
si?
¿con Rails 2.2 se solventaria en parte el problema de locking de active
record como para usarlo tambien como framework de subida de archivos ? o
nunca tanto?
asi como lo veo , el modulo es para pasar el archivo a nginx y no a rails,
no?
Asi es, lo que hace el modulo es parsear el contenido del request(lo
siento,
no se explicar bien esta parte) moviendo los archivos que se encuentren
en
el a un directorio que tu le especificas en la configuracion del
‘location’
y reemplaza esa parte con la metadata de dicho archivo(nombre de
archivo,
tipo, tamaño, etc) y esta metada es la que se le pasa a Rails.
¿con esto se podria prescindir de la aplicacion merb para los uploads?
seria ± igual de eficiente ?
Para responder a esta pregunta habria que hacer los benchmarks
necesarios,
los cuales no los puedo hacer en este momento por cuestion de tiempo,
pero
me da la corazonada que es mas eficiente ya que el parseo lo realiza en
C.
¿sabes si con este modulo es posible saber el estado de la carga , como
para hacer un progress bar?
No, para eso tienes otro modulo que me mencionaste en el mensaje
anterior.
www.artenlinea.cl
Un consejo hasta de un conejo: Siempre lee la documentación antes de
hacer
alguna consulta, de esta manera ahorras mucho tiempo a la persona que te
esta dando una mano evitando preguntas simples de responder.
ademas veo que el archivo se decarga en el servidor en el tmp, sin
embargo
, el formulario arroja el error de validacion ya que al parecer el @file
no
existe; quitando la validacion me aparece el siguiente error
El 12 de septiembre de 2008 0:15, Miguel M. < [email protected]> escribió:
def uploaded_data(file_attributes)
Eso esta bien, no te deberia dar error ya que estoy redefiniendo el metodo
setter, para poder coger la metadata del archivo que me es enviada por
el
modulo de nginx, si me podrias pegar el error que obtienes aqui para
poder
darme uan idea del problema.
Claro, @file es nil, nunca llega a asignarse ya que a este se le asigna
el
contenido del archivo en el metodo uploaded_data= y como has modificado
este
metodo nunca llega a producirse esa llamada, es normal.
ahora si funciona :P, lo unico que me queda es que la imagen se copie al
directorio de Rails, parece que tengo problemas de permisos con la
imagen,
esta queda por ej en /tmp/0000123458 , algo asi, pero me tira el
siguiente
error
El mismo problema tuve al hacer las pruebas, lo solucione temporalmente
dando los permisos al usuario con el que se ejecuta mongrelthin|whatever
al
directorio /tmp:
sudo chown -R rdavila:root /tmp
Digo que es una solucion temporal porque puede traer algunos problemas
en el
caso que tengas varias aplicaciones corriendo bajo distintos usuarios,
lamentablemente no tengo ahorita el ejemplo en mano para cacharrear.