Actualizar campoantes del update

Buenas estimados amigos de la lista.

tengo una pequeña duda para ustedes, para mi es grande.

antes de hacer un update necesito ir a traer un valor de otro modelo y
llevarlo a un campo del modelo que quiero actualizar, luego gurdar los
datos en el modelo.

def update
@funcionario = Funcionario.find(params[:id])
respond_to do |format|
#antes de hacer esto debo llenar el campo que tengo que traer de
otro modelo
if @funcionario.update_attributes(params[:funcionario])
flash[:notice] = ‘Funcionario was successfully updated.’
format.html { redirect_to funcionarios_path }
format.xml { head :ok }
else
format.html { render :action => “edit” }
format.xml { render :xml => @funcionario.errors, :status =>
:unprocessable_entity }
end
end
end

de antemano gracias por la ayuda

en el modelo funcionario hacer un metodo que busque el campo en la otra
tabla/modelo y lo guarde en un variable. Este metodo lo invocas en un
before_safe :mimetodo
y luego guardas los datos del modelo funcionario con ese campo ya
sabido.

Esto te lo he explicado a pelo, sin ver si se dice before_safe. Busca
algo
parecido en la API. O espera a una respuesta más afinada

Un saludo

El 18 de abril de 2009 14:54, Aprendiz_ror Ruby on rails <
[email protected]> escribió:

Tal vez podrias hacer algo asi:

class Funcionario < AR
before_update :update_model #escoge un buen nombre aqui

private
def update_model
otro_modelo = OtroModelo.find…
self.attr = otro_modelo.attr
self.attr = otro_modelo.attr

end
end

Si esto no te sirve, seria genial si puedes explicar el contexto de tu
aplicación, derrepente puede haber un problema de diseño por ahi.

Saludos.

¿cómo?
Este es un detalle que molaría saber.

2009/4/19 Aprendiz_ror Ruby on rails [email protected]

Mil gracias a todos, ya logré solucionarlo.