如何修改 Laravel 5.2 的认证用户表 users
需求
如何修改 users
数据库表为 user_list
,并且保证 Laravel 默认的授权功能不受影响?
解决方案
1. 修改数据库表
代码迁移:
public function up()
{
Schema::create('user_list', function (Blueprint $table) { // <= 这里
$table->increments('id');
...
$table->timestamps();
});
}
2. 修改 config/auth.php
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\User::class,
'table' => 'user_list', // <= 这里
],
或者,这一步骤你也可以通过在 App\User
模型中指定表来解决,二选一:
protected $table = 'user_list';
感谢 @elinx
3. 表单验证修改
AuthController.php 文件:
protected function validator(array $data)
{
return Validator::make($data, [
'name' => 'required|max:255',
'email' => 'required|email|max:255|unique:user_list', // <= 这里
'password' => 'required|confirmed|min:6',
]);
}
是这样的,使用没有问题,不过下面不用改
在app下的User 模型中添加指定表
:+1:
感觉标题应该改一下,感觉像是个提问!