修改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分页函数
Oct 09 PHP
php ignore_user_abort与register_shutdown_function 使用方法
Jun 14 PHP
PHP 通过Socket收发十六进制数据的实现代码
Aug 16 PHP
PHP实现变色验证码实例
Jan 06 PHP
php使用smtp发送支持附件的邮件示例
Apr 13 PHP
ThinkPHP3.1新特性之对分组支持的改进与完善概述
Jun 19 PHP
PHP生成随机密码类分享
Jun 25 PHP
ThinkPHP实现二级循环读取的方法
Nov 03 PHP
php之static静态属性与静态方法实例分析
Jul 30 PHP
PHP类的封装与继承详解
Sep 29 PHP
PHP检测数据类型的几种方法(总结)
Mar 04 PHP
PHP面向对象程序设计之接口的继承定义与用法详解
Dec 20 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扩展开发入门教程
2015/02/26 PHP
[原创]PHP实现字节数Byte转换为KB、MB、GB、TB的方法
2017/08/31 PHP
javascript 匿名函数的理解(透彻版)
2010/01/28 Javascript
Jquery中getJSON在asp.net中的使用说明
2011/03/10 Javascript
Js日期选择器并自动加入到输入框中示例代码
2013/08/02 Javascript
jquery实现input输入框实时输入触发事件代码
2014/01/28 Javascript
jquery实现带二级菜单的导航示例
2014/04/28 Javascript
JavaScript保存并运算页面中数字类型变量的写法
2015/07/06 Javascript
javascript实现确定和取消提示框效果
2015/07/10 Javascript
javascript封装简单实现方法
2015/08/11 Javascript
浅谈Javascript中Object与Function对象
2015/09/26 Javascript
BootStrap智能表单实战系列(三)分块表单配置详解
2016/06/13 Javascript
angularjs 表单密码验证自定义指令实现代码
2016/10/27 Javascript
JS控件bootstrap datepicker使用方法详解
2017/03/25 Javascript
React-router中结合webpack实现按需加载实例
2017/05/25 Javascript
js基于FileSaver.js 浏览器导出Excel文件的示例
2017/08/15 Javascript
nodejs项目windows下开机自启动的方法
2017/11/22 NodeJs
webpack打包node.js后端项目的方法
2018/03/10 Javascript
微信小程序实现顶部下拉菜单栏
2018/11/04 Javascript
基于javascript的拖拽类封装详解
2019/04/19 Javascript
微信小程序-API接口安全详解
2019/07/16 Javascript
分享JS表单验证源码(带错误提示及密码等级)
2020/01/05 Javascript
python抓取某汽车网数据解析html存入excel示例
2013/12/04 Python
跟老齐学Python之折腾一下目录
2014/10/24 Python
Python Unittest根据不同测试环境跳过用例的方法
2018/12/16 Python
美国隐形眼镜零售商:LensPure
2019/03/10 全球购物
外贸销售员求职的自我评价
2013/11/23 职场文书
会计应届生的自荐信
2013/12/13 职场文书
幼儿园教师备课制度
2014/01/12 职场文书
社区庆中秋节活动方案
2014/02/07 职场文书
预备党员表决心书
2014/03/11 职场文书
企业法人授权委托书
2014/04/03 职场文书
五一活动标语
2014/06/30 职场文书
教师反腐倡廉演讲稿
2014/09/03 职场文书
酒店厨房管理制度
2015/08/06 职场文书
服务器nginx权限被拒绝解决案例
2022/09/23 Servers