关键点:闭包
模型:
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条件就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持NICE源码。