Laravel версия 7.x
Я отправляю методы create
и edit
через запрос ajax и он работает нормально. Но в моем приложении есть модуль, который зависит от родительского модуля, например: Employee
и EmployeeEmergency
. Поэтому я добавил параметр Employee $Employee
в метод create
и route
для обработки этого запроса.
Однако, если идентификатор Employee
правильный, он работает нормально. Но, если идентификатор недействителен, он генерирует исключение.
{
"message": "No query results for model [App\\Employee] $arrayModel->token",
"exception": "Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException",
...
}
Я могу обработать это исключение, удалив route model binding
и аутентифицировав Employee
вручную. Но это просто излишне увеличит код.
Я хочу обработать это исключение с правильным ответом, что-то вроде Employee identifier is invalid
или что-то подобное, чтобы уведомить пользователя и предотвратить ошибку.
Сотрудник. php
class Employee extends Model
{
...
public function getRouteKeyName()
{
return 'token';
}
...
}
EmployeeEmergencyController. php
use App\Employee;
use App\EmployeeEmergency;
class EmployeeEmergencyController extends Controller
{
public function create(Employee $employee)
{
...
}
}
Веб. php
Route::get('employee-emergency/create/{employee}', 'EmployeeEmergencyController@create')
->name('admin.employee-emergency.create');
Есть ли какое-то решение для этого из коробки ..?