我可以通過使用whereHas方法查詢存在關係存在的位置,但現在我需要獲取此結果的反轉,其中結果與whereHas子句中的結果不匹配。Laravel搜索關係不存在
這裏是我的查詢:
$query->whereHas('actions', function ($query) {
$query->where('actions.created_at', '>', Carbon::now()->addDays(-30));
});
這獲取在過去30天內付諸行動的事情,但我需要未在過去30天內付諸行動的事情。
似乎我需要從關係中獲取max(actions.created_at),並查看該值是否大於30天前,但我不確定如何以雄辯的方式做到這一點。
注:個人和行動之間的關係是1對多,所以有可能與多個行動記錄,所以我不能只是翻轉操作是「< =」
啊!感謝這一點,沒有意識到有額外的參數,因爲它沒有在文檔中的例子。 – vonec
真棒解決方案 – FosAvance
謝謝你拯救我的一天... –