2016-12-08 138 views
0

我有2種型號,weekly_reportconsult_stat,他們被組織成這樣:軌道4:加入與的has_many關係

class ConsultStat < ActiveRecord::Base 
    belongs_to :weekly_report 
end 

class WeeklyReport < ActiveRecord::Base 
    has_many :consult_stats 
end 

我consult_stats表中的屬性是:consults,我想要檢索的總數諮詢一套給定的每週報告

如果我處理1個weekly_report,我可以做

WeeklyReport.find(x).consult_stats.sum(:consults) 

但是當我嘗試選擇一組weekly_reports的:

WeeklyReport.where("start_date > ?", "2016-11-01") 

,並使用檢索他們的consult_stats的諮詢總和joins我不斷收到錯誤。

+0

什麼是錯誤?可能是你的日期沒有格式化? –

回答

0

那到this post我意識到

  • weekly_report是奇異的連接(:weekly_report),因爲它是一個belongs_to的關係
  • weekly_reports是在複數,因爲它是表名

製作我的查詢:

ConsultStat.joins(:weekly_report).where("weekly_reports.start_date > ?", "2016-11-01")