• 注册
  • 经验分享 经验分享 关注:4 内容:21

    关于使用thinkphp6 使用with关联加where条件搜索

  • 查看作者
  • 打赏作者
  • Lv.8
    无极会员

    例:查询用户是否收藏了某篇文章

    模型代码:

    public function isfav(){
        return $this->hasOne(Collection::class,'cid','id');
    }

    例1:

    $reData = User::with(['isfav' => function ($query) {
    		$query->where('user_id',1);
    	}])->select();

    这里最终查询结果 只会剩下点了收藏的文章,而不会显示全部的 我们需要全部文章列表 并且点了收藏的会查出来 我们应该怎么办呢?

    $reData = User::with(['isfav' => function ($query) {
    		$query->getQuery()->where('user_id',1);
    	}])->select();

    只需要加上getQuery()这个方法就可以得到我们需要的结果了

    请登录之后再进行评论

    登录
  • 快速发布
  • 任务
  • 实时动态
  • 偏好设置
  • 帖子间隔 侧栏位置: