php – 查询关系雄辩

前端之家收集整理的这篇文章主要介绍了php – 查询关系雄辩前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有新闻模特,新闻有很多评论,所以我在新闻模型中做到:
public function comments(){
    $this->hasMany('Comment','news_id');
}

但是我也在评论表中删除了字段,我只想选择不被删除的注释.所以垃圾<>所以我想知道有没有办法做这样的事情:

$news = News::find(123);
$news->comments->where('trashed','<>',1); //some sort of pseudo-code

有没有办法使用上面的方法,或者我应该写这样的东西:

$comments = Comment::where('trashed',1)
    ->where('news_id','=',$news->id)
    ->get();
任何这些都适合你,选择你最喜欢的一个:

渴望加载.

$comments = News::find(123)->with('comments',function ($query) {
    $query->where('trashed',1);
});

>懒加载

$news = News::find(123);
$comments = $news->comments()->where('trashed',1)->get();

我不禁要注意到,尽管如此,您可能想要做的是处理软删除,而Laravel内置功能可以帮助您:http://laravel.com/docs/eloquent#soft-deleting

猜你在找的PHP相关文章