Rails的ActiveRecord序列化:attr方法给出"缺少类或模块错误"

bte*_*les 13 ruby serialization activerecord ruby-on-rails

我试图在ActiveRecord模型中序列化一个简单的属性,而Rails 2.3.4不喜欢它.

class Shopper
  serialize :tags
end

>> a = Shopper.new
=> <#Shopper...>

>>a.tags = ['aoeu','stnh']
=> ['aoeu','snth']

>> a.save
=> TypeError: class or module required
Run Code Online (Sandbox Code Playgroud)

有谁知道我错过了什么?

bte*_*les 51

Arf ......我以为我可以一次序列化两个属性,但事实并非如此:

serialize :tags, :garments   # this is wrong
Run Code Online (Sandbox Code Playgroud)

第二个参数应该是序列化对象的类,所以我必须这样做:

serialize :tags
serialize :garments
Run Code Online (Sandbox Code Playgroud)

bumsicle.

  • 谢谢你!如果你没有张贴,会引起很大的麻烦.:) (2认同)