Prevenção de consultas N + 1 no Rails

Vi alguns exemplos de como passar um:include valor hash ao chamar um dos @ da ActiveRecofind métodos no Rails. No entanto, não vi exemplos de se isso é possível por meio de métodos de relacionamento. Por exemplo, digamos que eu tenha o seguinte:

def User < ActiveRecord::Base
  has_many :user_favorites
  has_many :favorites, :through => :user_favorites
end

def Favorite < ActiveRecord::Base
  has_many :user_favorites
  has_many :users, :through => :user_favorites
end

def UserFavorite < ActiveRecord::Base
  belongs_to :user
  belongs_to :favorite
end

Todos os exemplos que eu vejo mostram código assim:

User.find(:all, :include => :favorite)

Mas não vejo exemplos que mostrem o uso de relacionamentos. Em vez disso, seria possível fazer algo assim?

User.favorites(:include => :user)

questionAnswers(2)

yourAnswerToTheQuestion