Laravel я могу добавить два метода обновления на контроллере ресурсов

Я новичок в laravel, и я хотел бы добавить еще один метод обновления из созданного контроллера ресурсов UsersController. что-то вроде этого:

  public function update(Request $request, $id)
{
    "logic here"
}
  public function update2(Request $request, $id)
{
    "logic here"
}

но я не знаю, как получить доступ к "update2". Есть ли способ сделать это?

3 ответа

Решение

Вам нужно только добавить еще один маршрут к вашему routes/web.php файл. Например:

Route::post('/users/{user}/update2', 'UsersController@update2');

Поскольку вы упомянули, что это контроллер ресурсов, вы, возможно, уже добавили что-то похожее на:

Route::resource('users', 'UsersController');

Это создаст соответствующий index, show, store, update, а также destroy маршруты.

Вы можете просто получить доступ к update2 следующим образом:

Route::get('route-name', 'YourCOntroller@update2');

Ресурсный маршрут создаст URL как user/{id}

Вы должны создать другой маршрут для update2 в web.php, как

Route::put('user/{id}/update2', 'V1\UserController@update2');

Другие вопросы по тегам