在哪里初始化经过验证的序列化字段?

时间:2010-12-05 06:28:14

标签: ruby-on-rails activerecord ruby-on-rails-3

我的模型有一个serialize :settings字段。它也通过一些自定义验证进行验证。我现在想要在创建对象时初始化该字段(self.settings = Settings.new)。所以我在after_initialization回调中尝试了它。但这给了我Can't convert Settings into String。使用before_validation回调时也会发生同样的情况。 但是,在构建对象后手动分配Setting.new时,根本没有问题。为什么我不能使用这些回调来设置序列化字段? (Rails3中)

1 个答案:

答案 0 :(得分:0)

确保您的:settings字段实际上属于:text类型而非:string。它可能会帮助您查看:something similar here