关键点:闭包

模型:

public function getCollect()
  {
    return $this->belongsTo('App\Components\Misc\Models\CollectCareerTalk', 'id', 'career_talk_id');
   }
 
public function otherMethod()
  {
    return $this->belongsTo('App\Components\Misc\Models\OtherMethodModel', '主键', '外键');
   }

仓库:

$this->model->with(['getCollect' => function ($q) use ($user_id) {
                      $q->where('user_id', $user_id);
                    },
                  'otherMethod'])
            ->select('id', 'title')
            ->where([
              'id' => 1
            ])
            ->first();

注意:with可以连多个表(数组形式传参),没有动态条件的,可以直接讲模型方法名写到with的参数中,有动态条件的,写到闭包中

以上这篇在laravel中使用with实现动态添加where条件就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

标签:
laravel,with,动态添加,where

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
狼山资源网 Copyright www.pvsay.com