如何在 laravel 雄辩的关系中使用 where 子句

Posted

技术标签:

【中文标题】如何在 laravel 雄辩的关系中使用 where 子句【英文标题】:How to use where clause in eloquent relationships in laravel 【发布时间】:2018-09-03 15:32:29 【问题描述】:

我正在尝试以 laravel eloquent 关系访问公司变量,但我收到错误未定义变量。

控制器

$assignedCases = AddressCaseAssign::with(['addresses' => function ($query) 
                                $query->where('company_id', '=',$request->company);

                            ])->where('user_id',$request->executive)
                            ->get();

型号

public function addresses()
    return $this->belongsTo(Address::class,'address_id');

【问题讨论】:

【参考方案1】:

您需要在 where 子句中使用 use 关键字传递 $request

$assignedCases = AddressCaseAssign::with(['addresses' => function ($query) use ($request) 
                            $query->where('company_id', '=',$request->company);

                        ])->where('user_id',$request->executive)
                        ->get();

【讨论】:

太棒了!这是工作

以上是关于如何在 laravel 雄辩的关系中使用 where 子句的主要内容,如果未能解决你的问题,请参考以下文章

雄辩的关系 laravel

Laravel 雄辩模型如何从关系表中获取数据

雄辩的 laravel 关系

在 Laravel 中迁移外键与雄辩的关系

雄辩的关系,模型的链接(Laravel 5.4)

Laravel 雄辩的一对多关系