假设我有模型Topics和Posts,其中Topic has_many:posts,而Post belongs_to:topic。此时我的数据库中已经有一些内容。
如果我进入rails控制台并键入
我可以调用 .each 来获取一个 Enumerator 对象。
我对CollectionProxy如何处理.each感到困惑。我知道它在某个时候被继承了,但我一直在阅读API文档,它们并没有很清楚地说明CollectionProxy从哪里继承,除非我漏看了什么明显的东西。 这个页面似乎没有告诉我太多信息,这个页面也是如此。
如果我进入rails控制台并键入
Topic.find(1).posts
我相信我会得到一个CollectionProxy对象。
=> #<ActiveRecord::Associations::CollectionProxy [#<Post id:30, ......>]>
我可以调用 .each 来获取一个 Enumerator 对象。
=> #<Enumerator: [#<Post id: 30, ......>]:each>
我对CollectionProxy如何处理.each感到困惑。我知道它在某个时候被继承了,但我一直在阅读API文档,它们并没有很清楚地说明CollectionProxy从哪里继承,除非我漏看了什么明显的东西。 这个页面似乎没有告诉我太多信息,这个页面也是如此。