密码重置laravel 5.7,路线已定义

时间:2019-01-16 22:25:05

标签: php laravel

所以我在laravel 5.7及其密码重置方面遇到一些问题。 (不知道为什么泰勒在运行php artisan make:auth

时不将其包含在模板中

但是,请考虑以下因素:

|        | GET|HEAD | login                  | login            | App\Http\Controllers\Auth\LoginController@showLoginForm                | web,guest               |
|        | POST     | login                  |                  | App\Http\Controllers\Auth\LoginController@login                        | web,guest               |
|        | POST     | logout                 | logout           | App\Http\Controllers\Auth\LoginController@logout                       | web                     |
|        | POST     | password/email         | password.email   | App\Http\Controllers\Auth\ForgotPasswordController@sendResetLinkEmail  | web,guest               |
|        | POST     | password/reset         | password.update  | App\Http\Controllers\Auth\ResetPasswordController@reset                | web,guest               |
|        | GET|HEAD | password/reset         | password.request | App\Http\Controllers\Auth\ForgotPasswordController@showLinkRequestForm | web,guest               |
|        | GET|HEAD | password/reset/{token} | password.reset   | App\Http\Controllers\Auth\ResetPasswordController@showResetForm        | web,guest               |
|        | POST     | register               |                  | App\Http\Controllers\Auth\RegisterController@register                  | web,guest               |
|        | GET|HEAD | register               | register         | App\Http\Controllers\Auth\RegisterController@showRegistrationForm      | web,guest               |

这些是我的auth路由,由laravel定义。没有更改,没有自定义。那么,如何链接到此重置(password.reset)路由?

<a class="dropdown-item" href="{{ route('password.reset', ['token' => app('auth.password.broker')->createToken(Auth::user())]) }}">Reset Password</a>

好的,怎么了?

NotFoundHttpException {#521 ▼
  -statusCode: 404
  -headers: []
  #message: ""
  #code: 0
  #file: "/Users/*****/Documents/****/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php"
  #line: 179
  trace: {▶}
}

本质上是404。单击链接后,您将重定向到404页面。这不应该发生。

我如何将密码重置错误?

同样,这是默认的全新laravel设置中的所有内容。除了添加用于重置密码的链接以外,没有进行任何自定义。

1 个答案:

答案 0 :(得分:1)

密码重置应该是以下链接:

{{ route('password.request') }}

login.blade.php

复制
<a class="btn btn-link" href="{{ route('password.request') }}">
    {{ __('Forgot Your Password?') }}
</a>

password.reset命名的路由用于电子邮件通知。