首页 > 解决方案 > Laravel Eloquent 查询带参数

问题描述

早晨,

我想使用 Eloquent 来提出这个请求,但我有一个错误。

$ModelVars=Model1::with(['Model2' => function($query,$var){
                            return $query->where('field1', 'like', '%'.$var.'%');}])->get();

有人可以帮助我。提前Thks。

标签: laraveldynamiceloquentwith-statementeloquent-relationship

解决方案


将您的代码更改为:

$ModelVars = Model1::with(['Model2' => function($query) use ($var){
    return $query->where('field1', 'like', '%'.$var.'%'); }])
->get();

use不是函数,它是闭包语法的一部分它只是使外部范围的指定变量在闭包内可用。


推荐阅读