首页 > php框架 > Laravel > 正文

Laravel怎么修改默认的用户(User)模型

穿越時空
发布: 2025-11-09 17:14:02
原创
189人浏览过
将User模型替换为Account需创建新模型并继承Authenticatable;2. 在config/auth.php中更新providers的model指向App\Models\Account;3. 更新控制器、路由等文件中对User类的引用;4. 若表名非users需在模型中设置$table属性。

laravel怎么修改默认的用户(user)模型

Laravel 默认使用 App\Models\User 作为用户认证模型,但如果你需要修改这个模型的位置或类名,比如想改成 App\Models\Account 或其他命名空间下的类,可以通过几个步骤轻松实现。

1. 修改 User 模型的路径和类名

如果你想将默认的 User 模型移到别的目录或改名:

  • 创建新的模型类,例如:app/Models/Account.php
  • 确保该模型继承自 Illuminate\Foundation\Auth\User 并使用 Authenticatable trait:
<?php

namespace App\Models;

use Illuminate\Foundation\Auth\User as Authenticatable;

class Account extends Authenticatable
{
// 可以在这里定义 fillable、hidden 等属性
}

2. 更新配置文件 auth.php

Laravel 的用户认证配置在 config/auth.php 中。你需要修改其中的 providers 配置项,指向新的模型:

'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\Models\Account::class,
],
],

这样 Laravel 在处理登录、注册、守卫认证时就会使用你的新模型。

3. 更新路由和控制器中的引用

如果你在控制器、中间件或策略中手动引用了 User::class,记得把这些地方也更新为新的模型类:

图改改
图改改

在线修改图片文字

图改改 455
查看详情 图改改
  • 注册控制器(RegisterController)中实例化的模型
  • 用户请求验证或授权逻辑
  • 任何使用 use App\Models\User; 的文件

4. 数据库迁移(可选)

如果新模型对应的数据表不是 users 表,还需要在模型中指定表名:

protected $table = 'accounts';

否则,默认会查找 users 表。

基本上就这些。只要改对 config/auth.php 和模型定义,Laravel 就能正确识别新的用户模型。不复杂但容易忽略配置文件。

以上就是Laravel怎么修改默认的用户(User)模型的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号