2010/4/9 Diego Caliri <[email protected]>:
> Tengo un problema que hubiese sido muy facil de resolver cuando estaba
> creando los modelos (trivial) y que ahora que me doy cuenta no se si es tan
> facil.
>
> Paso a explicar brevemente el escenario:
>
> [...]
>
> pero me pregunto por ejemplo:
>
> Que va a pasar el dia que se me cree la instancia del modelo A con id=200 y
> dicha instancia tenga un adjunto???? Calculo que paperclip va a ir a guardar
> dicho archivo a public/system/attachment/200/original/nombre_del_archivo
>

Paperclip por defecto usa el original_filename mas el ID, si el nombre
del archivo usado para el attachment de A y B cuando ambos tienen ID
#200 no es el mismo, entonces no hay problema.

> teoricamente debería poder guardarlo, pero después como accederia cada
> modelo para saber que archivo le corresponde? supongamos que tiene una
> lógica para ver el nombre  no solo el path, en dicho caso...que pasa si los
> 2 archivos se llaman igual??

A o B sobreescriben el uno al otro.

>
> Estuve leyendo la documentación y no encuentro como parametrizar el lugar
> donde se guardan dentro del filesystem para así hacer el fix manualmente
> moviendo los archivos y dandole una logica para q se guarden separado.
>

":class" en la interpolacion de path o url.

Podes leer mas de esto aqui:

http://yardoc.org/docs/thoughtbot-paperclip/Paperclip/ClassMethods
http://github.com/thoughtbot/paperclip/blob/master/lib/paperclip.rb#L155

> No he leido el codigo de paperclip por dentro todavia, y si alguien ya tiene
> la respuesta a mi duda me va a ahorrar algunas horitas.
>
> OBVIAMENTE todo hubiese sido mas facil si hubiese llamado a los atributos
> por ejemplo a_attachment en el modelo A y b_attachment en el B , pero ya es
> tarde. En el momento me pareció redundante nombrarlos así (no nombraria
> tampoco a_name en A y b_name en B; simplemente nombraria name en ambos
> modelos).......
>

Creo que no, lo que siempre hago es poner este initializer para paperclip:

http://gist.github.com/159866

> bueno.......en fin....quizás alguno/a de ustedes ya resolvió dicha duda y me
> puede ayudar
>

Antes de que resulte el problema, te recomendaria que migraras a otro
schema de URL para los archivos, sino vas a pasar cruzando los dedos
por mucho tiempo...

Saludos,
-- 
Luis Lavena
AREA 17
-
Perfection in design is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.
Antoine de Saint-Exupéry
_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar

Responder a