1

也就是说,如果app/models/animal.rb

class Animal
  include Mongoid::Document
  field :name, :type => String
  field :birthday, :type => Time
end

然后在app/models/cat.rb

class Cat < Animal
  include Mongoid::Document
  field :nail_length, :type => Float
end

那么您是否需要在 Animal 中设置某种“类型”以记住它是猫,还是自动的?

4

1 回答 1

1

存储了一个附加属性 _type 以确保从数据库加载时返回正确的文档。这也适用于嵌入文档圆形、矩形和形状。字段和验证是沿层次继承的,但不会向上继承。子类将包含其所有父类的字段和验证,但反之亦然。

http://mongoid.org/docs/inheritance/

于 2010-09-01T00:13:14.400 回答