2016-05-11 3 views
0

Я получаю ошибку неопределенного when() метода в Laravel 5, когда использование База данных: Query Builder Условные операторыВызов неопределенной метод Осветите Database Query Builder :: когда()

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); 

ответ

0
$EmpDetails = DB::table('EMPLOYEES')->where('JOB',$job)->get(); 

Я думаю, что это должно ж орк.

Редактировать: Возможно, вы захотите использовать заранее, где. В этом случае:

$EmpDetails = DB::table('EMPLOYEES')->where(function($query) use ($job) 
     { 
      $query->where('JOB',$job); 
     })->get() 
+0

Это хорошо работает, но мое требование не выполняется. см. https://laravel.com/docs/5.2/queries#conditional-statements, почему мы используем функцию if() –

Смежные вопросы