调用未定义的方法 Illuminate\Database\Query\Builder::when()
Posted
技术标签:
【中文标题】调用未定义的方法 Illuminate\\Database\\Query\\Builder::when()【英文标题】:Call to undefined method Illuminate\Database\Query\Builder::when()调用未定义的方法 Illuminate\Database\Query\Builder::when() 【发布时间】:2016-05-11 05:52:09 【问题描述】:使用 Database: Query Builder Conditional Statements
时,我在 laravel 5 中遇到 undefinedwhen()
方法的错误
https://laravel.com/docs/5.2/queries#conditional-statements
调用未定义的方法Illuminate\Database\Query\Builder::when()
$job = $request->input('Job');
$EmpDetails = DB::table('EMPLOYEES')->when($job, function ($query)
return $query->where('Job', '=', $job);
)->get();
print_r($EmpDetails);
【问题讨论】:
【参考方案1】:$EmpDetails = DB::table('EMPLOYEES')->where('JOB',$job)->get();
我认为这应该可行。
编辑:您可能想在哪里使用高级。在这种情况下:
$EmpDetails = DB::table('EMPLOYEES')->where(function($query) use ($job)
$query->where('JOB',$job);
)->get()
【讨论】:
这很好,但我的要求没有满足。请参阅laravel.com/docs/5.2/queries#conditional-statements 为什么我们使用 when() 函数以上是关于调用未定义的方法 Illuminate\Database\Query\Builder::when()的主要内容,如果未能解决你的问题,请参考以下文章
未调用自定义 UIButton 的 setIsSelected 方法
调用未定义的方法 Cake\ORM\Entity::query() CakePhp