加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 查询关系雄辩

发布时间:2020-12-13 13:12:35 所属栏目:PHP教程 来源:网络整理
导读:我有新闻模特,新闻有很多评论,所以我在新闻模型中做到: public function comments(){ $this-hasMany('Comment','news_id');} 但是我也在评论表中删除了字段,我只想选择不被删除的注释.所以垃圾所以我想知道有没有办法做这样的事情: $news = News::find(123
我有新闻模特,新闻有很多评论,所以我在新闻模型中做到:
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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读