Hola!. Tengo una tabla candidatos de la que dependen varias tablas:
tecnologias, idiomas, etc. El caso es que yo pensaba que al borrar un
candidato, ruby ya se encargaba de borrar las referencias al candidato
borrado en las demás tablas.
El caso es que hago un:
IdiomaCandidato.find(:all, :conditions =>[’ candidato_id = ? ',
params[:id]]).destroy
Pero no reconoce el método destroy, cuando si que está en
IdiomaCandidato.
Alguien sabe porque no funciona esto?.
Un saludo.
find(:all, …) devuelve un array. Tendrás que aplicar destroy a cada
elemento del array.
El 1/10/07, Marcos C. [email protected]
escribió:> Hola!. Tengo una tabla candidatos de la que dependen varias tablas:
Hola,
find(:all, …) devuelve un array. Tendrás que aplicar destroy a cada
elemento del array.
El caso es que hago un:
IdiomaCandidato.find(:all, :conditions =>[’ candidato_id = ? ',
params[:id]]).destroy
también puedes usar los métodos destroy_all y delete_all. El segundo es
más rápido, pero no invoca los callbacks que tengas definidos.
suerte,
javier ramirez
http://feeds.feedburner.com/~r/FormatInternet/~6/2
Muchas gracias a los dos!. La verdad es que era muy simple, pero no me
he dado cuenta de que era un array hasta que me lo habéis dicho.
Un saludo y gracias.