Laravel查询:Builder.php第2258行中的BadMethodCallException:
我正在构建一个laravel应用程序,在控制器中我正在检查时间重叠问题 我使用的逻辑是在我的控制器的查询中,首先我将检查day_id作为输入提供的日期是否与具有该day_id的数据库匹配,然后它将检查时间,如果匹配,则它不能让用户保存输入,否则如果查询失败,它将让用户保存数据Laravel查询:Builder.php第2258行中的BadMethodCallException:,php,mysql,sql,laravel,laravel-5,Php,Mysql,Sql,Laravel,Laravel 5,我正在构建一个laravel应用程序,在控制器中我正在检查时间重叠问题 我使用的逻辑是在我的控制器的查询中,首先我将检查day_id作为输入提供的日期是否与具有该day_id的数据库匹配,然后它将检查时间,如果匹配,则它不能让用户保存输入,否则如果查询失败,它将让用户保存数据 public function postAllocateRoom(Request $request) { $startTime = Carbon::parse(str_replace(a
public function postAllocateRoom(Request $request)
{
$startTime = Carbon::parse(str_replace(array('am', 'pm'), ':00', $request->input('start')));
$endTime = Carbon::parse(str_replace(array('am', 'pm'), ':00', $request->input('end')));
$dayId = $request->input('day_id');
$timeExists = ClassRoom::where('day_id', $dayId)
->andWhere('start', $startTime)
->andWhere('end', $endTime)
->exists();
if($timeExists){
return redirect('allocateRoomPage')->withErrors(['time' => 'Class Room Already Taken']);
}
$classRoom = new ClassRoom();
$classRoom->department_id=$request->input('department_id');
$classRoom->room_id=$request->input('room_id');
$classRoom->course_id=$request->input('course_id');
$classRoom->day_id=$dayId;
$classRoom->start=$startTime;
$classRoom->end=$endTime;
$classRoom->save();
$request->session()->flash('success', 'Successfully allocated room');
return redirect('allocateRoomPage');
}
但在运行程序后,我看到以下错误:
Builder.php第2258行中的BadMethodCallException:调用未定义
方法\Database\Query\Builder::andWhere()
如果有人发现问题,请帮助我找到解决方案。没有
和where
方法。简单的
where()->where()
就像where和where
简单地使用
$timeExists = ClassRoom::where('day_id', $dayId)
->Where('start', $startTime)
->Where('end', $endTime)
->exists();
因为在laravel中没有andWhere方法