我試圖使用public_activity gem創建一個活動日誌。當我打開一個特定用戶的活動,我用下面的命令:在Rails中,如何在只有協會不是零的情況下才能加載協會?
@activity = PublicActivity::Activity.order("created_at desc").where(owner_id: @awardleader.authentication.id).includes(:trackable, trackable: :awardunit)
在這裏,awardunit
協會不會在那裏所有的時間。由於我跟蹤了幾個模型,有時跟蹤的模型沒有獎勵單元。那麼,我們如何才能加載協會只有當它可用?
PS:我想要獲得所有活動......在該列表中,可以有來自不同模型的活動。有些模型沒有Awardunit作爲協會。所以,上面的代碼給出了一個錯誤,說沒有該模型的Awardunit! PS:如果我使用我在我的問題中顯示的代碼,它會給我一個這樣的錯誤「在黃金上找不到關聯名'awardunit';或許你拼錯了它?」。問題是我不能刪除加載award_unit因爲一些trackables已經
PublicActivity::Activity.includes(:trackable)
awardunit
你想找到所有的活動,或只有那些有可跟蹤AwardUnit? – janfoeh
@janfoeh所有活動......在該列表中,可以有來自不同模型的活動。有些模型沒有Awardunit作爲協會。所以,上面的代碼給出了一個錯誤,說沒有該模型的Awardunit! – THpubs