Путь сброса пароля Laravel не найден

Я пытаюсь завершить сброс пароля в laravel 5.2. Все работает, вплоть до последней части.

Когда я ввожу свой адрес электронной почты и новый пароль, я получаю сообщение об ошибке

MethodNotAllowedHttpException в строке 219 RouteCollection.php:

Вот мои маршруты

Route::get('/password/reset/email', 'Auth\PasswordController@getEmail');
Route::post('/password/reset/email', 'Auth\PasswordController@postEmail');

Route::get('/password/email', 'Auth\PasswordController@sendResetLinkEmail');

Route::get('/password/reset/{token}', 'Auth\PasswordController@showResetForm');
Route::post('/password/reset', 'Auth\PasswordController@reset');

А вот так выглядит мой контроллер.

<?php

namespace App\Http\Controllers\Auth;

use View;
use App\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\ResetsPasswords;

class PasswordController extends Controller
{
    /*
    |--------------------------------------------------------------------------
    | Password Reset Controller
    |--------------------------------------------------------------------------
    |
    | This controller is responsible for handling password reset requests
    | and uses a simple trait to include this behavior. You're free to
    | explore this trait and override any methods you wish to tweak.
    |
    */

    use ResetsPasswords;

    /**
     * Create a new password controller instance.
     *
     * @return void
     */
    public function __construct()
    {
        $this->middleware('guest');
    }

    public function getSendResetLinkEmailSuccessResponse()
    {
        return View::make('auth.passwordSent');
    }

    protected $redirectPath = '/';
}

Вот форма:

<form action="" method="post">
   <input type="hidden" name="_token" value="{{ csrf_token() }}">

 <div class="form-group">
   <label for="login-form-email">E-mail</label>
   <input type="email" name="email" id="email" class="form-control" tabindex="1" placeholder="Email" value="{{ old('email') }}">
 </div>

 <div class="form-group">
   <label for="login-form-password">New password</label>
   <input type="password" class="form-control" name="password" id="login-form-password" tabindex="2" placeholder="Password" tabindex="4">
 </div><!-- /.form-group -->

 <div class="form-group">
   <label for="login-form-password-retype">Confirm new password</label>
   <input type="password" class="form-control" name="password_confirmation" id="login-form-password-retype" tabindex="3" placeholder="Confirm password">
 </div><!-- /.form-group -->

 <div class="form-group">
   <input type="submit"  class="btn btn-primary pull-right" name="reset-confirm" id="reset-confirm" tabindex="4" value="Reset Password">
 </div>
</form>

Не знаю, почему у меня возникает эта ошибка, и я не могу найти ее решение. Надеюсь, вы, ребята, можете мне помочь


person Nicolas    schedule 09.06.2016    source источник


Ответы (2)


Это ваш маршрут сброса:

Route::post('/password/reset', 'Auth\PasswordController@reset');

И все же в вашей форме вы не отправляете сообщения по этому маршруту:

<form action="" method="post">

Измените свое действие:

<form action="/password/reset" method="post">
person jszobody    schedule 09.06.2016

Установите действие формы на / пароль / сброс

person Laravel User    schedule 09.06.2016