在 Ruby on Rails 中,假设一个 Story 对象可以“has_many”投票对象(一个故事被许多用户投票为“热门”)。
所以当我们做一个
s = Story.find(:first)
s
是一个 Story 对象,并说
s.votes
返回[]
和
s.votes.class
返回Array
很明显, s.votes 是一个空的 Array 对象。
这时,当
s.votes.create
被调用,它实际上调用了Vote类的一个方法?Array 类对象怎么会调用 Vote 类方法?