在laravel中使用with实现动态添加where条件

今天小编就为大家分享一篇在laravel中使用with实现动态添加where条件,具有好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

关键点:闭包

模型:


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条件

基础教程推荐