Ruby on rails 3 ruby调试中的Mongoid继承子体问题

Ruby on rails 3 ruby调试中的Mongoid继承子体问题,ruby-on-rails-3,inheritance,mongoid,nested-attributes,ruby-1.9,Ruby On Rails 3,Inheritance,Mongoid,Nested Attributes,Ruby 1.9,我对mongoid继承有问题。我有一个Zipcode,从Location类继承了两个mongoid文档。它具有以下简单的继承结构: class Zipcode < Location 看到了吗?奇怪的是,当调用Zipcode.祖先时,BasicObject中的后代会被填充。我使用的是Ruby1.9.2、Mongoid 2.2.3和Rails3.1.1 问题:mongoid语法中有什么特殊的东西可以在嵌套属性中获得继承吗?mongoid、rails或ruby中是否存在需要修复的问题 更新:

我对mongoid继承有问题。我有一个Zipcode,从Location类继承了两个mongoid文档。它具有以下简单的继承结构:

class Zipcode < Location
看到了吗?奇怪的是,当调用Zipcode.祖先时,BasicObject中的后代会被填充。我使用的是Ruby1.9.2、Mongoid 2.2.3和Rails3.1.1

问题:mongoid语法中有什么特殊的东西可以在嵌套属性中获得继承吗?mongoid、rails或ruby中是否存在需要修复的问题

更新:

只是为了证明第一次破译测试代码是有效的:

Breakpoint 1 at /Users/pc/work/Project/bson/ruby/1.9.1/gems/mongoid-2.2.3/lib/mongoid/document.rb:277
/Users/pc/work/Project/bson/ruby/1.9.1/gems/mongoid-2.2.3/lib/mongoid/document.rb:277
@_type ||= [descendants + [self]].flatten.uniq.map { |t| t.to_s }
(rdb:1) p descendants
[Zipcode]

发现解决方案必须改变

config.cache_classes = true 
在config/environments/development.rb中。显然,有时它会打乱rails中的继承

config.cache_classes = true