1
Rails 2.3.14를 사용하여, 소유자로부터 일부 값을 얻기 위해 (저장하기 전에) 빌드 한 후 ActiveRecord 객체의 소유자에 액세스하는 방법을 찾고 있습니다. 간단하지만, 내 접근 방식은 항상 불필요한 데이터베이스 쿼리를 발생시킵니다.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
. 어떻게 할 수 있습니까?
위대한, 이것이 내가 찾고있는 것입니다. BTW,'inverse_of' ** **는 레일즈 2.3에 존재합니다. 변경 로그를보십시오 : https://github.com/rails/rails/blob/2-3-stable/activerecord/CHANGELOG –