修改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 相关文章推荐
用windows下编译过的eAccelerator for PHP 5.1.6实现php加速的使用方法
Sep 30 PHP
PHP编程过程中需要了解的this,self,parent的区别
Dec 30 PHP
ajax+php打造进度条 readyState各状态
Mar 20 PHP
PHP fopen()和 file_get_contents()应用与差异介绍
Mar 19 PHP
PHP 二维数组根据某个字段排序的具体实现
Jun 03 PHP
php模拟post提交数据的方法
Feb 12 PHP
WordPress中限制非管理员用户在文章后只能评论一次
Dec 31 PHP
PHP MVC框架skymvc支持多文件上传
May 26 PHP
PHP重定向与伪静态区别
Feb 19 PHP
PHP中时间加减函数strtotime用法分析
Apr 26 PHP
实现PHP中session存储及删除变量
Oct 15 PHP
thinkphp5框架调用其它控制器方法 实现自定义跳转界面功能示例
Jul 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/10/25 PHP
Cygwin中安装PHP方法步骤
2015/07/04 PHP
PHP时间类完整实例(非常实用)
2015/12/25 PHP
JQuery入门—编写一个简单的JQuery应用案例
2013/01/03 Javascript
jquery load事件(callback/data)使用方法及注意事项
2013/02/06 Javascript
离开当前页面前使用js判断条件提示是否要离开页面
2014/05/02 Javascript
iframe如何动态创建及释放其所占内存
2014/09/03 Javascript
node.js中的http.response.write方法使用说明
2014/12/14 Javascript
详解iframe与frame的区别
2016/01/13 Javascript
iscroll.js的上拉下拉刷新时无法回弹的解决方法
2016/02/18 Javascript
discuz表情的JS提取方法分析
2017/03/22 Javascript
angular.JS实现网页禁用调试、复制和剪切
2017/03/31 Javascript
Vue 中的compile操作方法
2018/02/26 Javascript
Vue实现搜索 和新闻列表功能简单范例
2018/03/16 Javascript
使用Vue自定义指令实现Select组件
2018/05/24 Javascript
ExtJs使用自定义插件动态保存表头配置(隐藏或显示)
2018/09/25 Javascript
vue中渲染对象中属性时显示未定义的解决
2020/07/31 Javascript
[01:08:33]OG vs VGJ.T 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python实现抓取网页生成Excel文件的方法示例
2017/08/05 Python
Python Pivot table透视表使用方法解析
2020/09/11 Python
HTML5实现视频直播功能思路详解
2017/11/16 HTML / CSS
世界上最大的网络主机公司:1&1
2016/10/12 全球购物
VICHY薇姿美国官方网站:欧洲药房第一的抗衰老品牌
2017/11/22 全球购物
Saks Fifth Avenue澳洲/亚太地区:萨克斯第五大道精品百货店
2019/06/09 全球购物
.NET面试题:什么是值类型和引用类型
2016/01/12 面试题
Net Remoting把服务器端激活两种模式
2014/01/22 面试题
怎样在 Applet 中建立自己的菜单(MenuBar/Menu)?
2012/06/20 面试题
编辑求职信样本
2013/12/16 职场文书
升国旗仪式主持词
2014/03/19 职场文书
公司廉洁自律承诺书
2014/03/27 职场文书
2014年项目经理工作总结
2014/11/24 职场文书
2014年节能降耗工作总结
2014/12/11 职场文书
小升初自荐信怎么写
2015/03/26 职场文书
校长新学期寄语2016
2015/12/04 职场文书
2016关于学习党章的心得体会
2016/01/15 职场文书
怎样写好演讲稿题目?
2019/08/21 职场文书