How can I retrieve the object on an association without going through the database?

Consider the following setup:

class Parent < ActiveRecord::Base   has_many :children end

class Child < ActiveRecord::Base   belongs_to :parent end

And this console session:

p = Parent.find 41 p.some_attr = 'some_value' c = p.children.build c.parent

By watching my log files, I can see that c.parent is querying the db for the parent object. I want instead to access the existing in-memory object (p), because I need access to the parent's some_attr value, which is not yet stored in the database. Is there any way of doing this? c.parent(force_reload=false) doesn't get me there.

are you using rails 3?

If you are I think you just do

p = Parent.includes(:children).find(41)