服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|JavaScript|易语言|

服务器之家 - 编程语言 - PHP教程 - 在laravel中使用with实现动态添加where条件

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

2021-08-29 16:26攻城狮阿楠 PHP教程

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

关键点:闭包

模型:

?
1
2
3
4
5
6
7
8
9
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', '主键', '外键');
   }

仓库:

?
1
2
3
4
5
6
7
8
9
$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条件就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/tclzsn7456/article/details/83785589

延伸 · 阅读

精彩推荐