El find me devuelve un objeto. Igual que el where. O sea, el registro no es nil. Solo cuando le aplicas el destroy tira el NIL. Creo que el problema viene por la falta de ID en la tabla. Justamente, probe después, buscar el objeto y darle DELETE al mismo. O sea,
follow  = Follow.find zarasa
follow.delete

Y ahi se queja de la falta de id en la tabla follows.

Finalmente, para seguir con esto, lo resolvi borando el registro desde el array.

user.followers.delete(otro_user)

Y salió con fritas.


On 12/23/2010 03:18 PM, Silvio Quadri wrote:
El día 23 de diciembre de 2010 15:08, Tute<[email protected]>  escribió:
Estoy trabajando con Rails 3 y me encuentro que borrar no funciona tan
lineal.

Follows.delete.where("alguna condicion") no pincha, pero no hace lo que
quiero, o sea, no borra. Vale decir qua la tabla follows no tiene id con lo
cual el clásico Follows.delete ID no funciona. Alguien tiene idea por qué
puede ser que no borre el delete de este modo y en todo caso cómo debería
ser ?

Probe otra alternativa:

follow = Follows.find_by etc etc
follow.destroy

Y pincha con esto:

No conocía esa forma de where.

find_by_bla_bla_bla puede devolver nil (que es lo que te está pasando,
no está enganchando tu condición)

Usa:
follow.destroy if follow

Quizás porque no enganche la condición, el where no funcione.



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

Responder a