修改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巧获服务器端信息
Dec 06 PHP
php弹出对话框实现重定向代码
Jan 23 PHP
linux下为php添加iconv模块的方法
Feb 28 PHP
Smarty环境配置与使用入门教程
May 11 PHP
[原创]smarty简单模板变量输出方法
Jul 09 PHP
thinkPHP中volist标签用法示例
Dec 06 PHP
PHP那些琐碎的知识点(整理)
May 20 PHP
详解php中serialize()和unserialize()函数
Jul 08 PHP
PHP实现基于回溯法求解迷宫问题的方法详解
Aug 17 PHP
PHP 实现文件压缩解压操作的方法
Jun 14 PHP
PHP CURL实现模拟登陆并上传文件操作示例
Jan 02 PHP
使用git迁移Laravel项目至新开发环境的步骤详解
Apr 06 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
咖啡因含量是由谁决定的?低因咖啡怎么来?低因咖啡适合什么人喝
2021/03/06 新手入门
浅析PHP 按位与或 (^ 、&)
2013/06/21 PHP
解析PHP中ob_start()函数的用法
2013/06/24 PHP
PHP的password_hash()使用实例
2014/03/17 PHP
php通过数组实现多条件查询实现方法(字符串分割)
2014/05/06 PHP
PHP获取真实客户端的真实IP
2017/03/07 PHP
PHP基于递归算法解决兔子生兔子问题
2018/05/11 PHP
innerText和innerHTML 一些问题分析
2009/05/18 Javascript
Javascript Global对象
2009/08/13 Javascript
将json当数据库一样操作的javascript lib
2013/10/28 Javascript
jquery获取一组checkbox的值(实例代码)
2013/11/04 Javascript
关于js数组去重的问题小结
2014/01/24 Javascript
JavaScript常用小技巧小结
2014/12/29 Javascript
jquery实现二级导航下拉菜单效果
2015/12/18 Javascript
基于javascript数组实现图片轮播
2016/05/02 Javascript
AngularJS ng-bind-html 指令详解及实例代码
2016/07/30 Javascript
EasyUI学习之DataGird分页显示数据
2016/12/29 Javascript
Vue中的无限加载vue-infinite-loading的方法
2018/04/08 Javascript
layui2.0使用table+laypage实现真分页
2019/07/27 Javascript
解决layui的form里的元素进行动态生成,验证失效的问题
2019/09/14 Javascript
JavaScript键盘事件响应顺序详解
2019/09/30 Javascript
JavaScript中的this/call/apply/bind的使用及区别
2020/03/06 Javascript
Python面向对象编程基础解析(一)
2017/10/26 Python
python简单实现AES加密和解密
2019/03/28 Python
Numpy 中的矩阵求逆实例
2019/08/26 Python
Python Scrapy框架第一个入门程序示例
2020/02/05 Python
解决json中ensure_ascii=False的问题
2020/04/03 Python
详解webapp页面滚动卡顿的解决办法
2018/12/26 HTML / CSS
当当网官方旗舰店:中国图书销售夺金品牌
2018/04/02 全球购物
TUMI马来西亚官方网站:国际领先的高品质商旅箱包品牌
2018/04/26 全球购物
广州一家公司的.NET面试题
2016/06/11 面试题
Linux内核产生并发的原因
2016/11/08 面试题
历史专业个人求职信分享
2013/12/20 职场文书
干部培训工作总结2015
2015/05/25 职场文书
MySQL库表名大小写的选择
2021/06/05 MySQL
使用Djongo模块在Django中使用MongoDB数据库
2021/06/20 Python