Gente:
  Que tal? Cabe aclarar, que es mi primer proyecto en
Rails, muchas cosas las debo estar haciendo de forma
no-optima (por asi decirlo ;), asi que les pido por
favor que si saben formas alternativas de hacer lo que
quiero, las comenten ya que les voy a estar muy
agradecido. :)

  Las cosas estan funcionando, pero quiero corroborar
que lo estoy haciendo de la forma mas optima posible.

  Necesito hacer un alta de productos, en la que se
puedan subir unas fotos del mismo. Una foto (cover
llamemosle) para mostrar un thumbnail del mismo, y una
serie de fotos asociadas (que pueden estar o no) y con
ellas hacer una galeria.

  Para ello, instale el plugin de acts_as_attachment.
Les  cuento, que cree un Product que "tiene varios"
ProductPhoto. Hasta ahi, todo bien. Ahora, les paso un
extracto del partial _form.rhtml del alta.

<code>

<p><label for="product_price">Precio</label><br/>
<%= text_field 'product', 'price'  %></p>

<p><label for="product_cover_photo">Foto de
Tapa</label><br/>
<%= file_field
'product_cover_photo','uploaded_data'%></p>

<p><label for="product_cover_photo">Foto
1</label><br/>
<%= file_field
'product_extra_photo_1','uploaded_data'%>

</code>

Bien.. acá seguirian los produc_extra_photo_* que
quisiera agregar. Ahora, que hago en el controller?

<code>
@product = Product.new(params[:product])
product_cover_photo =
ProductPhoto.new(params[:product_cover_photo])
product_cover_photo.cover = true
@product.product_photos << product_cover_photo

product_extra_photo_1 =
productPhoto.new(params[:product_extra_photo_1])
@product.product_photos << product_extra_photo_1

@product.save
</code>

Primera pregunta: Cual es la forma menos "cabeza" de
hacer esto? Me suena medio raro todo esto que estoy
haciendo pero bueh.. deberia haber "estudiado" mas
Rails antes de mandarme :)

Segunda pregunta: Lo que hago para identificar si un
ProductPhoto es cover o no, es lo siguiente

<code>
def product_cover_photo
   product_photos.find(:first, :conditions => [ "cover
= ?", true ])
end

def product_extra_photos
   product_photos.find(:all, :conditions => [ "cover
!= ?", true ])
end

</code>

Que otras opciones se les ocurren? 

Me surgió también la duda de como se hace para
crear/actualizar atributos de objetos hijo, desde la
"vista del padre" en gral. 

Demasiadas preguntas para un mismo mail.  

Gracias por haber leido hasta aqui.




        
                
__________________________________________________ 
Preguntá. Respondé. Descubrí. 
Todo lo que querías saber, y lo que ni imaginabas, 
está en Yahoo! Respuestas (Beta). 
¡Probalo ya! 
http://www.yahoo.com.ar/respuestas 

_______________________________________________
ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar

Responder a