Вы можете обрабатывать различные типы исключений, что исключение может быть справиться с ModelNotFoundException в этом случае
try{
$user = User::findOrFail($id);
}catch(ModelNotFoundException $e){
return response()->json(['error' => 'User not found'], 400);
}
И есть еще один способ чтобы поймать различные типы исключений в Handler.php, находящиеся на app/Exceptions/Handler.php, вы можете поймать исключения и вернуть все, что хотите, внутри функции render
.
Например insede, что функция, которую вы можете добавить это перед return parent::render($request, $e):
if($e instanceof ModelNotFoundException)
{
return new Response(['message' => 'We haven\'t find any data'], 204);
}
Я знаю об этом, но вернуть мне не ясно, ошибка, завернутые в HTML код – Dev
Что вы имеете в виду? Он выдает исключение, и если он не пойман правильно, вам будет показана страница HTML, в которой говорится, что было выбрано исключение. Вот как работают исключения. Чтобы поймать его, вам нужно обернуть свой код в блок try/catch. Другим подходом было бы просто пойти с методом поиска. – trajchevska
Я имею в виду, что мне нужно вернуть сообщение без HTML-кода для API mobile – Dev