2016-06-09 67 views
2

我正试图在laravel 5.2中完成密码重置。一切正常,直到最后一部分。Laravel密码重置路由未找到

当我进入我的电子邮件和新密码,收到了错误的RouteCollection.php线

MethodNotAllowedHttpException 219:

这里是我的路线

Route::get('/password/reset/email', 'Auth\[email protected]'); 
Route::post('/password/reset/email', 'Auth\[email protected]'); 

Route::get('/password/email', 'Auth\[email protected]'); 

Route::get('/password/reset/{token}', 'Auth\[email protected]'); 
Route::post('/password/reset', 'Auth\[email protected]'); 

这就是我的控制器的样子。

<?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> 

不知道为什么我得到这个错误,我无法找到一个解决的办法。希望你们能帮助我

+0

哪条线是219? – jszobody

+0

正在发送的URL是什么? – aynber

+0

您的表单可能通过GET提交而不是POST? – jszobody

回答

2

这是你的复位路线:

Route::post('/password/reset', 'Auth\[email protected]'); 
表单中的

然而,你是不是张贴到这条路线:

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

改变你的行动:到/密码形式的

<form action="/password/reset" method="post"> 
+0

谢谢,我不敢相信我没有看到这个我自己。这asnewer是解决方案 – Nicolas

+0

没有概率,很高兴帮助! – jszobody

1

设置动作/复位