In Ruby on Rails, why will story.votes return an empty Array object, but story.votes.create will act
Posted
by Jian Lin
on Stack Overflow
See other posts from Stack Overflow
or by Jian Lin
Published on 2010-05-23T05:58:21Z
Indexed on
2010/05/23
6:10 UTC
Read the original article
Hit count: 328
In Ruby on Rails, say a Story object can "has_many" Vote objects (a story is voted "hot" by many users).
So when we do a
s = Story.find(:first)
s
is a Story object, and say
s.votes
returns []
and
s.votes.class
returns Array
So clearly, s.votes is an empty Array object.
At this time, when
s.votes.create
is called, it actually invokes a method of the Vote class? How come an Array class object can invoke a Vote class method?
© Stack Overflow or respective owner