Laravel 5.6 Error MethodNotAllowedHttpException

Я пытаюсь отредактировать пользователя Auth по умолчанию в laravel, и я получаю сообщение об ошибке, когда отправляю свою форму редактирования так вот мой контроллер:

class UserController extends Controller
{

public function __construct()

{
    $this->middleware('auth');
}

public function edit(User $user)
{
    $user = Auth::user();
    return view('admin.profile.edit', compact('user'));
}

public function update(User $user)
{
    $this->validate(request(), [
        'name' => 'required',
        'email' => 'required|email|unique:users',
        'password' => 'required|min:6|confirmed'
    ]);

    $user->name = request('name');
    $user->email = request('email');
    $user->password = bcrypt(request('password'));

    $user->save();

    return back();
}
}

и вот мой файл просмотра, когда форма, я просто помещаю форму здесь

    <form method = "post" action = "{{route('users.edit', $user)}}">
                    {{ csrf_field() }}
                    {{ method_field('patch') }}
                    <input type = "text" name = "name"  value = "{{ $user->name }}" />

                    <input type = "email" name = "email"  value = "{{ $user->email }}" />

                    <input type = "password" name = "password" />

                    <input type = "password" name = "password_confirmation" />

                    <button type = "submit">Send</button>
                </form>

поэтому важный файл, в котором я на 90% уверен, что проблема в моем маршруте, я знаю, что я кое-как отправляю некоторые из них, чтобы отправить или тиски, я действительно смущен этой частью

Route::get('admin/profile/{user}',  ['as' => 'users.edit', 'uses' => 'UserController@edit']);
Route::post('admin/profile/{user}/update',  ['as' => 'users.update', 'uses' => 'UserController@update']);

так что теперь, когда я отправляю форму, я получаю эту ошибку

Symfony \ Component \ HttpKernel \ Exception \ MethodNotAllowedHttpException
No message

и, кстати, я тоже попытался использовать маршрут патча со скрытым вводом, но снова тот же выход.

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
0
596
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

ОК Итак, проблема обнаружена, я должен изменить маршрут редактирования пользователя на обновление пользователя, чтобы

<form method = "post" action = "{{route('users.edit', $user)}}">

будет изменено на это

<form method = "post" action = "{{route('users.update', $user)}}">

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