1
我有以下型號:如何強制ActiveRecord通過JOIN加載belongs_to-has_one關係而不是2個查詢?
User < ActiveRecord::Base
belongs_to :person
end
Person < ActiveRecord::Base
has_one :user
end
如果我想用戶裝載時,它被加載,我會做這樣的人:
User.includes(:person)
的問題是,在使用2查詢,這很好,在belongs_to-has_many關係中,但在這種情況下,我認爲使用JOIN和只有一個查詢會更好。
如果我做User.join(:person)
它將加入:person
,但不包括選擇的陳述和屬性:user
。
我該怎麼做?
你也可以使用#eager_load,這迫使聯想到一個單一的連接查詢被加載。 –