Laravel 5.2 授权更改 'users' table

Laravel 5.2 auth change 'users' table

我使用了 Laravel 中的新功能:

 php artisan make:auth

但是当我注册时它会默认使用数据库 table users,但我想将其更改为另一个 table。默认情况下,它在 table 中使用 updated_atcreated_at,我也想删除它。

Auth/AuthController

protected function create(array $data)
{
    return User::create([
        'voornaam' => $data['voornaam'],
        'email' => $data['email'],
        'password' => bcrypt($data['password']),
    ]);
}

app\User

protected $fillable = [
    'voornaam', 'email', 'password',
];

这些是我认为会改变它的东西,但他们没有。我希望有人能告诉我更多关于这个问题的信息。

要更改 table 名称,请转到 app/User.php 并将 属性 $table 设置为自定义名称,例如:

$table = 'new_table';

您还应该更改默认迁移。转到:/database/migrations/2014_10_12_000000_create_users_table.php 文件并在此处更改 users 以获得相同的名称。要删除时间戳,您可以删除行:

$table->timestamps();

但是,如果我是你,我会重新考虑删除这些时间戳

别忘了在 REGISTERCONTOLLER.PHP 中更改验证。

来自

'email' => 'required|email|max:255|unique:users',

'email' => 'required|email|max:255|unique:company',

检查 Laravel 5.3 Change user table in Auth 的替代解决方案,使用 config/auth.php 和 RegisterController.php.

中的修改

要禁用您也可以在模型中使用的时间戳 class:

public $timestamps = false;

默认模型将其 class 名称作为 table 名称!
我在 App/User.php

的顶部定义了一个受保护的 属性
protected $table = 'auth_users';

这告诉 laravel 使用 auth_users table 而不是默认的 user table。 它就像魅力一样。