Я создаю пользовательский запрос с именем «StoreUser» для пользовательских правил проверки для методов store
и update
. Для метода store
, когда я использую метод POST
в Почтальоне, все работает хорошо. Но для метода PATCH/PUT
я улавливаю ошибку: " Метод PATCH не поддерживается для этого маршрута ".
Поддерживаемые методы: GET, HEAD ". Мой URL для метода PATCH: http://127.0.0.1:8000/api/users/44
Используя debagger, я обнаружил, что проблема возникает, когда пользовательские Request "StoreUser"
запускают правила возврата массива в методе * 1012. * Ниже моего кода. В методе PATCH/PUT
возникает только ошибка, POST
все нормально
ApiResource
Route::apiResource('users', 'UserController');
Методы обновления / хранения UserController
public function store(StoreUser $request)
{
$request->validated();
$password = User::hashPassword($request->get('password'));
$request->merge(['password' => $password]);
$user = User::create($request->all());
return response()->json($user, 201);
}
public function update(StoreUser $request, $id)
{
$request->validated();
$user = User::find($id);
$user->update($request->all());
return response()->json($user, 200);
}
Пользовательский запрос StoreUser
public function rules()
{
return [ // in this place error occurs ONLY IN PATCH/PUT methods
'name' => 'required|min:5',
'email' => 'required|email|unique:users',
'password' => 'required|min:6|max:50'
];
}