Update_attributes?

Buenas, a ver si me podéis ayudar…

tengo ésto:

@incidencia = Incidencia.find(params[:incidencia][:id])
@successful = @incidencia.update_attributes(params[:incidencia])

que lo que hace es guardar todos los campos del formulario que tengan
que
ver con incidencia, pero yo sólo quiero guardar unos cuantos para no
tener
que crear un montón de campos hidden…

hay alguna forma para hacerlo?

gracias

2006/10/17, Luis V. [email protected]:

hay alguna forma para hacerlo?

gracias

No sé si he entendido bien la pregunta, sería simplemente:

@incidencia = Incidencia.find(params[:incidencia][:id])
@incidencia.atributo1 = params[:incidencia][:atributo1]
@incidencia.atributo2 = params[:incidencia][:atributo2]
[…]
@incidencia.save

Si lo que quieres decir es que creas atributos hidden con los campos que
no rellena el usuario para que lleguen todos los atributos de la clase
Incidencia, entonces la respuesta es que en realidad no necesitas crear
esos campos hidden, el método update_attributes(hash) actualiza S�LO los
parametros que le llegan en el hash, no necesita obligatoriamente que le
pases todos los atributos del modelo.

----- Original Message -----

Buenas, a ver si me podéis ayudar…

tengo ésto:

@incidencia = Incidencia.find(params[:incidencia][:id])
@successful = @incidencia.update_attributes(params[:incidencia])

que lo que hace es guardar todos los campos del formulario que tengan
que ver con incidencia, pero yo sólo quiero guardar unos cuantos para no
tener que crear un montón de campos hidden…

hay alguna forma para hacerlo?

gracias



Ror-es mailing list
[email protected]
simplelogica.net

On Oct 17, 2006, at 6:16 PM, Luis V. wrote:

Buenas, a ver si me podéis ayudar…

tengo ésto:

@incidencia = Incidencia.find(params[:incidencia][:id])
@successful = @incidencia.update_attributes(params[:incidencia])

que lo que hace es guardar todos los campos del formulario que
tengan que ver con incidencia, pero yo sólo quiero guardar unos
cuantos para no tener que crear un montón de campos hidden…

Es que los que quieres guardar son solo los que aparecen visibles en
el formulario?

– fxn

Sergio Gil Pérez de la Manga
escribió:>> que crear un montón de campos hidden…
Creo que update_attributes no necesita recibir todos los atributos para
guardarlos, y que los que no haya recibido como parámetros los tomará de
los atributos actuales de @incidencia.

¿Podrías indicarnos si esto funciona bien en script/console?

cambia el 1 por el id de una incidencia existente,

y atrib1, atrib2, val1 y val2 por atributos y

valores para tu incidencia!

incidencia = Incidencia.find(1)
incidencia.update_attributes({:atrib1 => valor1, :atrib2 => valor2})

Saludos,
Raúl

Vale, resulta que funcionaba como decís vosotros, pero me estaba
confundiendo al ver los logs.

Muchas gracias de todas formas