Нарушение ограничения целостности: 1452 Невозможно добавить или обновить дочернюю строку: сбой ограничения внешнего ключа, как исправить - PullRequest
0 голосов
/ 18 мая 2019

Ошибка: (schoolapps_db. vehicles, ОГРАНИЧЕНИЕ vehicles_driverid_foreign ИНОСТРАННЫЙ КЛЮЧ (driverId) ССЫЛКИ drivers (id) НА УДАЛЕННОМ КАСКАДЕ)

Следующий код показывает ошибку:

public function addVehicle(Request $request){

    $vehicle = new vehicle ;
    $vehicle->vehicleCode = $request->vehicleCode ;
    $vehicle->type = $request->type ;
    $vehicle->routeId = $request->routeId ;
    $vehicle->driverId = $request->driverId ;
    $vehicle->status = $request->status ;

    if($vehicle->save()){
        return redirect('/vehicle') ;
    }else{
        return redirect('/vehicle')->with('Operation failed. Please try again.');
    }
}

1 Ответ

0 голосов
/ 18 мая 2019

Я не могу комментировать, но, возможно, вы пытаетесь сохранить модель vehicle с внешним ключом driverId, которого еще нет в вашей базе данных.Я предлагаю вам сначала проверить, существует ли driverId, как это

if (Vehicle::where('driverId', '=', $request->driverId)->exists()) {
    \\your code here
} else {
    \\driverId not exist
}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...