Ante todo buenos dias,
Aver si alguien me puede dar una mano, tengo un problema con haciendo cache
de un modelo, el problema consiste en que despues de hacer un fetch desde la
aplicacion rails, me devuelve un hash freezado que no puedo modificar (como
dato la expiracion de el objeto en la cache esta en el before_save y probe
con el after_save, pero no es ese el problema).

Lo que mas me genera ruido es que en el debugger desde la aplicacion rails
es 100% reproducible, en cambio en la consola de rails anda correctamente
(consumiendo el mismo elemento de la cache)

En el debugger

(rdb:1) *c=Rails.cache.fetch("prueba"){Circuit.find 178}*
#<Circuit id: 178, name: "Preguntar", description: "Preguntar un item ",
created_at: "2009-09-17 20:32:59", updated_at: "2010-06-07 19:21:19",
category_id: 75, source_code:
"###################################################...", user_id: 22>
(rdb:1)* c.name="somename"*
TypeError Exception: can't modify frozen hash
(rdb:1)* c.frozen?*
true

En la consola....

>> *c=Rails.cache.fetch("prueba"){Circuit.find 178}*
1 row in set
>> *c.name="somename"*
=> "somename"
>>* c.save*
=> true
>> *c.frozen?*
=> false
_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar

Responder a