Laravel:MethodNotAllowedHttpException错误更改密码路线

问题描述 投票:0回答:1

我在laravel初学者。我想在我的应用程序更改密码表单。我的看法是这样的:

<form action="{{ route("profile.changePassword") }}" method="post">
   {{ csrf_field() }}
   {{--{{ method_field('PUT') }}--}}
   <div class="form-group">
        <label for="old">Old password</label>
        <input value="" type="password" name="old" class="form-control" id="old">
   </div>

   <div class="form-group">
        <label for="new">New password</label>
        <input value="" type="password" name="new" class="form-control" id="new">
   </div>
   <div class="form-group">
        <label for="rep">Repeat new password</label>
        <input value="" type="password" name="rep" class="form-control" id="rep">
   </div>

   <div class="text-center">
       <button type="submit" class="btn btn-success">Update</button>
   </div>

我的控制器是这样的:

public function changePassword()
{
    return view('profile.passwordReset');
}

public function resetPassword($request)
{
    dd($request);
}

我的路线是这样的:

Route::group(['prefix' => 'panel'], function (){
    Route::resource("profile", "ProfileController", ['except' => 'index']);
    Route::get("/changepassword", "ProfileController@changePassword")->name('profile.changePassword')->middleware('auth');
    Route::post("/resetPassword", "ProfileController@resetPassword")->name('profile.resetPassword')->middleware('auth');
});

但我提交表单后,我得到一个错误:

Symfony的\分量\ HttpKernel \异常\ MethodNotAllowedHttpException无消息

我改变post("/resetPassword"...any("/resetPassword"...,并再次获得了同样的错误。

laravel laravel-5.6
1个回答
2
投票

其实你形成坏的行动路线,您使用视图路线,而不是后期的路线。

你需要改变它resetPassword路线:

<form action="{{ route("profile.resetPassword") }}" method="post">
© www.soinside.com 2019 - 2024. All rights reserved.