모델/host.rb레일 3 has_many (왼쪽 가입)
class Host < ActiveRecord::Base
has_many :report, :dependent => :delete_all
end
모델/report.rb을 선택
class Report < ActiveRecord::Base
belongs_to :host
end
지금은 자신의 보고서를 모든 호스트를 선택합니다 여기에는 보고서가없는 호스트도 포함됩니다.
나는list=Host.all(:joins => "left join `reports` on reports.host_id=host.id")
하여이를 달성하기 위해 시도했지만 레일 만 hosts
테이블에서 필드를 선택처럼 보인다. 따라서 list[0].report
으로 보고서 개체에 액세스 할 수 없습니다. 또한 원시 SQL 명령을 사용하지 않고 select를 수행하는 것이 더 행복 할 것입니다 - 루비와 비슷한 방식으로.
SQL을 사용하지 않고 하나만 선택하여 호스트와 보고서를 모두 얻는 방법은 무엇입니까?
대단히 감사합니다! 그게 내가 찾고 있었던 바로 그 것이다. – gorootde