Laravel,仅检查关系的最新记录

时间:2018-11-06 22:36:23

标签: laravel eloquent eloquent--relationship

我有2个表(帖子修订版),并且它们之间有关系
帖子具有许多修订(一对多关系)
修订表的一列称为状态已批准已拒绝
现在,如果最新的修订批准
,我想选择所有帖子 我尝试了很多方法,但可以得到状态为批准帖子


更新

我在回信中找到了一个很好的解决方案

https://stackoverflow.com/a/53120558/9500574

2 个答案:

答案 0 :(得分:1)

if [ -f "$var" ] 
then
     cat "$var"
elif [ -d "$var" ]
then
    ls -l "$var"
fi

该收藏集将仅包含那些已批准修订的帖子。

答案 1 :(得分:0)

我想这种方式可以工作,但是我不确定查询中的first()

$posts = Post::whereHas('revisions', function($q){
   $q->where('status','approved')->orderBy('created_at','desc')->first();
})->get();