解决 Laravel InvalidArgumentException: Authentication views not found

Posted

技术标签:

【中文标题】解决 Laravel InvalidArgumentException: Authentication views not found【英文标题】:Solve Laravel InvalidArgumentException: Authentication views not found 【发布时间】:2020-05-10 03:17:47 【问题描述】:

为了使用 laravel-permission spatie 包,我将 laravel 5.6 项目更新到 laravel 6。它使用 Laravel 提供的默认身份验证。我无法访问 auth 路由,它显示为我已登录,但仍然看到 Login |在导航栏上注册。 这是我的路线列表

         | GET|HEAD | /                      |                  | Closure                                                                | web          |
|        | GET|HEAD | api/user               |                  | Closure                                                                | api,auth:api |
|        | GET|HEAD | home                   | home             | App\Http\Controllers\HomeController@index                              | web,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    |
|        | GET|HEAD | password/reset         | password.request | App\Http\Controllers\Auth\ForgotPasswordController@showLinkRequestForm | web,guest    |
|        | POST     | password/reset         | password.update  | App\Http\Controllers\Auth\ResetPasswordController@reset                | web,guest    |
|        | GET|HEAD | password/reset/token | password.reset   | App\Http\Controllers\Auth\ResetPasswordController@showResetForm        | web,guest    |
|        | GET|HEAD | register               | register         | App\Http\Controllers\Auth\RegisterController@showRegistrationForm      | web,guest    |
|        | POST     | register               |                  | App\Http\Controllers\Auth\RegisterController@register                  | web,guest    |
|        | GET|HEAD | any                  |                  | App\Http\Controllers\LexaController@index                              | web          |

【问题讨论】:

路线很好,就是找不到风景。检查函数RegisterController@showRegistrationFormLoginController@showLoginForm,并确保其中的视图存在于您的资源文件夹中。 嗨@aynber 谢谢你的建议。我已经转到登录控制器,当我尝试转到 use Illuminate\Foundation\Auth\AuthenticatesUsers; 时,它无法引用它。这似乎是问题所在。我能做什么? 这不应该是问题,因为错误是提到视图,而不是使用语句。这很可能只是一个 IDE 问题。 【参考方案1】:

您的错误表明 Laravel 找不到您的身份验证视图。您的注册和登录视图是否位于:resources/views/auth?如果不是,您可能必须将它们移到那里。

【讨论】:

是的,这些文件存在于 resources/views/auth 文件夹中。

以上是关于解决 Laravel InvalidArgumentException: Authentication views not found的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 包:发现解决

解决 Laravel InvalidArgumentException: Authentication views not found

如何解决这个 Laravel 会话问题

如何解决 laravel 中“找不到驱动程序”?

laravel模版共用数据解决方法

Laravel 7 w/ Laravel Excel:您的需求无法解决为一组可安装的软件包