Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Ruby (http://www.forosdelweb.com/f105/)
-   -   Error con Find... (http://www.forosdelweb.com/f105/error-con-find-456049/)

Chika 12/01/2007 09:15

Error con Find...
 
Hola, estoy aprendiendo Ruby y tengo un problema.... y al parecer la informacion que hay al respecto no la he entendido, por lo que agradeceré ayuda...

Estoy llamando a un metodo, dentro de este necesito cargar @trabajador, lo hago de la siguiente manera:

@trabajador = Trabajador.find(:all,
:conditions =>[" persona_id = "+ params[:id]])


el id, viene del .rhtml que carga el método.
El error que me aparece es:

undefined method `stringify_keys!' for "240":String

entiendo que me está tomando el id correctamente pero que lo lee como un string en vez de un integer... como diablos le digo que es un integer?!?!?!

gracias...

willywg 23/04/2007 21:12

Re: Error con Find...
 
Saludos Chika, debes pasar el parámetro conditions de la siguiente manera:

Código PHP:

 @trabajador Trabajador.find(:all
                     :
conditions =>[" persona_id = ?"params[:id]]) 

Rails asumirá por defecto el tipo de dato para el id. En este caso integer.

De otro lado si quieras pasar un valor a entero debes usar variable.to_i

kamlife_86 23/04/2007 21:51

Re: Error con Find...
 
hola chika, no tengo mucho tiempo en este del rails pero si he realizado eso... la manera en que yo lo hago es la siguiente



@registro = Nombre_del_model.find(@params["id"])


obviamente @registro se te convertira en un arreglo (array) con toda la informacion del registro con id "id"


luego para accesar a su id puedes hacer

@registro.id

Nombre

@registro.nombre

etc


Nota: Nombre_del_model, es el nombre de tu tabla en singular...


La zona horaria es GMT -6. Ahora son las 06:21.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.