修改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 相关文章推荐
php5 pdo新改动加载注意事项
Sep 11 PHP
PHP 文章中的远程图片采集到本地的代码
Jul 30 PHP
php数组函数序列之krsort()- 对数组的元素键名进行降序排序,保持索引关系
Nov 02 PHP
一个简单的php加密解密函数(动态加密)
Jun 19 PHP
php网站地图生成类示例
Jan 13 PHP
php实现cc攻击防御和防止快速刷新页面示例
Feb 13 PHP
PHP基于工厂模式实现的计算器实例
Jul 16 PHP
WordPress后台中实现图片上传功能的实例讲解
Jan 11 PHP
PHP实现删除多重数组对象属性并重新赋值的方法
Jun 07 PHP
PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】
Jun 13 PHP
PHP设计模式之单例模式定义与用法分析
Mar 26 PHP
PHP从零开始打造自己的MVC框架之路由类实现方法分析
Jun 03 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
PHP编程函数安全篇
2013/01/08 PHP
Symfony2学习笔记之插件格式分析
2016/03/17 PHP
PHP+Mysql无刷新问答评论系统(源码)
2016/12/20 PHP
js跟随滚动条滚动浮动代码
2009/12/31 Javascript
JavaScript在多浏览器下for循环的使用方法
2012/11/07 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(一)让静态人物动起来
2013/01/23 Javascript
jquery 日期控件datepicker属性详细解析
2013/11/08 Javascript
再谈JavaScript线程
2015/07/10 Javascript
理解javascript定时器中的单线程
2016/02/23 Javascript
整理AngularJS框架使用过程当中的一些性能优化要点
2016/03/05 Javascript
基于javascript制作经典传统的拼图游戏
2016/03/22 Javascript
[原创]JQuery 在表单提交之前修改 提交的值
2016/04/14 Javascript
jQuery实现为LI列表前3行设置样式的方法【2种方法】
2016/09/04 Javascript
微信小程序 Page()函数详解
2016/10/17 Javascript
原生JS实现图片轮播切换效果
2016/12/15 Javascript
Bootstrap的popover(弹出框)在append后弹不出(失效)
2017/02/27 Javascript
微信小程序中吸底按钮适配iPhone X方案
2017/11/29 Javascript
JavaScript引用类型Date常见用法实例分析
2018/08/08 Javascript
关于微信公众号开发无法支付的问题解决
2018/12/28 Javascript
详解从react转职到vue开发的项目准备
2019/01/14 Javascript
微信小程序实现顶部导航特效
2019/01/28 Javascript
[34:10]Secret vs VG 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.24
2019/09/10 DOTA
python3.6实现学生信息管理系统
2019/02/21 Python
Python3.5实现的罗马数字转换成整数功能示例
2019/02/25 Python
使用 Python 玩转 GitHub 的贡献板(推荐)
2019/04/04 Python
关于Django Models CharField 参数说明
2020/03/31 Python
Django更新models数据库结构步骤
2020/04/01 Python
django下创建多个app并设置urls方法
2020/08/02 Python
CSS3轻松实现圆角效果
2017/11/09 HTML / CSS
PHP数据运算类型都有哪些
2013/11/05 面试题
自我管理的活动方案
2014/08/25 职场文书
课外访万家心得体会
2014/09/03 职场文书
2014年语文教研组工作总结
2014/12/06 职场文书
会计主管竞聘书
2015/09/15 职场文书
Python如何识别银行卡卡号?
2021/06/10 Python
Spring Boot mybatis-config 和 log4j 输出sql 日志的方式
2021/07/26 Java/Android