2014年11月12日 星期三

ActiveRecord serialize field broken .


在 ActiveRecord  中的一個 model.
當中有個 serialize 的欄位, 居然吐出一個 很奇怪格式.

{
 :coder => #<ActiveRecord::Coders::YAMLColumn:0x000000085d7ea8 @object_class=Object>,
 :value => 'xxx',
 :serialized => :serialized
}
, 令我百思不得其解.

最後居然是, 在執行此model 前先執行 , Product.undefine_attribute_methods , 這樣居然就好了.

{ :id => 2, :name => "yoyo2", :anchor => "yoyo2", :settings => { :coder => ActiveRecord::Coders::YAMLColumn:0x000000085d7ea8 @object_class=Object>, :value => "---\n:relay:\n :Default: http://yoyo.com\n", :state => :serialized }, :created_at => Tue, 08 Apr 2014 05:36:58 UTC +00:00, :updated_at => Wed, 12 Nov 2014 03:42:59 UTC +00:00 }

【下列文章您可能也有興趣】

沒有留言: