Используя Rails 2.3.14, я ищу способ получить доступ к владельцу объекта ActiveRecord после его сборки (но до сохранения), чтобы получить некоторые значения от владельца. Вроде бы просто, но мой подход всегда запускает ненужный запрос к базе данных.
Пример:
class Parent < ActiveRecord::Base
has_many :children
end
class Child < ActiveRecord::Base
belongs_to :parent
def after_initialize
self.some_value = parent.some_value
# This fires an additional database query to get the parent
end
end
parent = Parent.find(1)
# SELECT * FROM `parents` WHERE (`parents`.`id` = 1)
child = parent.children.build
# Same SELECT query is fired again, but of course not needed
Я ищу способ доступа к объекту ассоциации (здесь: родитель) без , выполняющего дополнительный доступ к базе данных. Как это можно сделать?