修改Laravel自带的认证系统的User类的命名空间的步骤


Posted in PHP onOctober 15, 2019

刚创建了一个新的Laravel 5.3项目,想要使用Laravel自带的认证功能。

但是我们都知道,Laravel默认情况下的Model都是放在app目录下的,也就是说其命名空间是App.但是有时候我们希望app目录能够更加整洁一点,所以想要把各个Model都统一放在Model目录下。

由于Laravel的app目录遵循了psr-4标准,也就是说会是用composer按照psr-4标准对各个类进行自动加载。如果我们直接修改目录,而不修改对应的命名空间的话,是无法正常加载这些Model类的。

所以,将User.php文件移动到了新的Model文件夹下的时候,需要同时将User类的namespace修改为App\Model。然后,需要执行

composer dumpautoload

命令,将修改后的类自动加载进来。

接着继续进行认证系统的创建。

在执行了

php artisan make:auth

命令之后,在正常情况下,已经可以实现正常的注册、登录等功能了。

但是在修改完User的命名空间后,会发现出现了找不到User类的错误。我们刚才已经重新加载了User类,为什么还会出现找不到的问题?

仔细想想我们就会发现,由于登录、注册用到的代码都是Laravel框架自带的,默认情况下,它们会认为User类还在App命名空间下,所以登录的时候,会出现错误。

如何解决呢?

在config/auth.php文件里,可以找到providers,在其中driver是eloquent的那一组中,可以看到model选项,默认为App\User::class,将其修改为App\Model\User::class即可。

这样应该就可以正常登录了。

所以总结一下,如果想要修改User的命名空间的话,需要以下几步:

新建Model文件夹,移动User.php到该文件夹下

修改User.php的namespace为App\Model

执行composer dumpautoload,重新加载类

将config/auth.php文件中的providers部分的model对应的类,修改为App\Model\User::class

以上这篇修改Laravel自带的认证系统的User类的命名空间的步骤就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP实现把数字ID转字母ID
Aug 12 PHP
php中出现空白页的原因及解决方法汇总
Jul 08 PHP
phpword插件导出word文件时中文乱码问题处理方案
Aug 19 PHP
php实现把url转换迅雷thunder资源下载地址的方法
Nov 07 PHP
PHP中trim()函数简单使用指南
Apr 16 PHP
详解php中反射的应用
Mar 15 PHP
PHP学习笔记之php文件操作
Jun 03 PHP
thinkphp多表查询两表有重复相同字段的完美解决方法
Sep 22 PHP
PHP实现的曲线统计图表示例
Nov 10 PHP
PHP实现从PostgreSQL数据库检索数据分页显示及根据条件查找数据示例
Jun 09 PHP
Yii框架通过请求组件处理get,post请求的方法分析
Sep 03 PHP
PHP7 新增常量
Mar 09 PHP
解决Laravel自定义类引入和命名空间的问题
Oct 15 #PHP
laravel 如何实现引入自己的函数或类库
Oct 15 #PHP
Laravel 类和接口注入相关的代码
Oct 15 #PHP
在PHP中实现使用Guzzle执行POST和GET请求
Oct 15 #PHP
在Laravel中使用GuzzleHttp调用第三方服务的API接口代码
Oct 15 #PHP
解决在laravel中auth建立时候遇到的问题
Oct 15 #PHP
使用 PHP Masked Package 屏蔽敏感数据的实现方法
Oct 15 #PHP
You might like
ThinkPHP之import方法实例详解
2014/06/20 PHP
JS动画效果代码3
2008/04/03 Javascript
jquery ajax abort()的使用方法
2010/10/28 Javascript
js编码之encodeURIComponent使用介绍(asp,php)
2012/03/01 Javascript
Javascript的表单验证-初识正则表达式
2016/03/18 Javascript
深入理解jQuery中的事件冒泡
2016/05/24 Javascript
jQuery+Ajax实现限制查询间隔的方法
2016/06/07 Javascript
JS代码实现百度地图 画圆 删除标注
2016/10/12 Javascript
js实现炫酷的左右轮播图
2017/01/18 Javascript
JavaScript实现公历转农历功能示例
2017/02/13 Javascript
jquery PrintArea 实现票据的套打功能(代码)
2017/03/17 Javascript
Bootstrap 网格系统布局详解
2017/03/19 Javascript
利用JavaScript在网页实现八数码启发式A*算法动画效果
2017/04/16 Javascript
使用Bootstrap4 + Vue2实现分页查询的示例代码
2017/12/21 Javascript
jQuery实现ajax回调函数带入参数的方法示例
2018/06/26 jQuery
vue中的ref和$refs的使用
2018/11/22 Javascript
JavaScript数组去重的方法总结【12种方法,号称史上最全】
2019/02/28 Javascript
使用jQuery实现掷骰子游戏
2019/10/24 jQuery
vue中beforeRouteLeave实现页面回退不刷新的示例代码
2019/11/01 Javascript
Python正则表达式的使用范例详解
2014/08/08 Python
python dict 字典 以及 赋值 引用的一些实例(详解)
2017/01/20 Python
Django实现一对多表模型的跨表查询方法
2018/12/18 Python
解决Python下json.loads()中文字符出错的问题
2018/12/19 Python
Python Opencv 通过轨迹(跟踪)栏实现更改整张图像的背景颜色
2020/03/09 Python
Python小整数对象池和字符串intern实例解析
2020/03/21 Python
html5 Canvas画图教程(5)—canvas里画曲线之arc方法
2013/01/09 HTML / CSS
Html5大文件断点续传实现方法
2015/12/05 HTML / CSS
手机端用rem+scss做适配的详解
2017/11/15 HTML / CSS
来自南加州灵感的工作和娱乐服装:TravisMathew
2019/05/01 全球购物
党政领导班子民主生活会整改措施
2014/09/18 职场文书
2015大学生求职信范文
2015/03/20 职场文书
会议营销主持词
2015/07/03 职场文书
先进教师个人主要事迹材料
2015/11/03 职场文书
2016年大学生暑期社会实践活动总结
2016/04/06 职场文书
python中%格式表达式实例用法
2021/06/18 Python
Windows server 2012 配置Telnet以及用法详解
2022/04/28 Servers