Laravel:更改密码路由中的MethodNotAllowedHttpException错误

Laravel:更改密码路由中的MethodNotAllowedHttpException错误,laravel,laravel-5.6,Laravel,Laravel 5.6,我是拉威尔的初学者。我想在我的申请中有一个更改密码的表格。 我的看法是这样的: <form action="{{ route("profile.changePassword") }}" method="post"> {{ csrf_field() }} {{--{{ method_field('PUT') }}--}} <div class="form-group"> <label for="old">Old password

我是拉威尔的初学者。我想在我的申请中有一个更改密码的表格。 我的看法是这样的:

<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');
});
我的路线是这样的:

<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\Component\HttpKernel\Exception\ MethodNotAllowedHttpException 没有消息


我将
post(“/resetPassword”…
更改为
any(/resetPassword)…
并再次得到相同的错误。

实际上,您使用的是查看路由,而不是post路由

您需要为重置密码路由更改它:

<form action="{{ route("profile.resetPassword") }}" method="post">

事实上,您形成的是坏动作路线,您使用的是查看路线,而不是发布路线

您需要为重置密码路由更改它:

<form action="{{ route("profile.resetPassword") }}" method="post">


您的表单被定向到
profile.changePassword
并使用post方法。您的路线只有
get
for
changePassword
。您应该将其更改为
Route::post(/changePassword),…
您的表单被定向到
profile.changePassword
并使用post方法。您的路线只有
get
for
changePassword
。您应该将其更改为
Route::post(“/changePassword”,…
Woops!谢谢。严重错误:/Woops!谢谢。严重错误:/