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

    关于使用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()这个方法就可以得到我们需要的结果了

      请登录之后再进行评论

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