在我的数据库中,我们在一列中有一个序列化值,如下所示
考虑表是测试,归档是元
---------------------------------------------------------------------
ID Name meta
------------------------------------------------------------------------
726345 test - :status: :success
:result: !ruby/object:PG::Result {}
-------------------------------------------------------------------------
使用活动记录Test.select('meta').where(:id=> 726345)
编写查询时
抛出错误是:PG::Error Exception: result has been cleared
用于删除列 名称和 ID 工作正常。 我发现了结果键的错误,但我不知道如何解决这个问题。
任何帮助??
轨道 - 5.1,红宝石 - 2.2.5,mysql - 5.6
提前致谢
写入时,序列化了空PG::Result
对象。查询时,rails 试图用 PG::Result.new
反序列化它,但失败
> PG::Result.new
PG::Error: result has been cleared
要解决此问题,您只需清除该列即可。无论如何,它没有实际用途。
不过,我真的不明白为什么你从结果 postgtresql 序列化为 mysql,不过