我有一個has_many關聯使用日期作爲每個模型的外鍵和主鍵兩個模型之間。has_many條件或過程外鍵
它完美的一種方式,但不是其他。
作品
has_one :quiz_log, :primary_key => :start_at, :foreign_key => :start_at
不工作
has_many :event_logs, :primary_key => :start_at, :foreign_key => :start_at
的原因是(我認爲),因爲在QuizLog的start_at是date
和事件日誌的start_at是datetime
。因此,它返回零,試圖匹配一個簡單的日期確切的日期時間。
如何在第二條語句上將foreign_key start_at轉換爲將其從datetime首次轉換爲簡單日期以便與第二個模型匹配?
當我嘗試過時,出現「輸出錯誤:#
ere
,因爲你在聲明中引用了'event_log',所以失敗了。 嘗試'has_many:event_logs,:primary_key =>:start_at,:conditions => proc {「DATE(start_date)='#{start_date}'」} ' – faron