Php Laravel 5.2:如何自定义默认身份验证表名称

Php Laravel 5.2:如何自定义默认身份验证表名称,php,laravel,laravel-5,eloquent,Php,Laravel,Laravel 5,Eloquent,我使用的是Laravel5.2,我想自定义默认的“users”表名。 我发现这个问题有多个答案,所以通过测试所有答案,它不起作用: 通过更改/App/config/Auth.php文件,添加'table'=>'members',并最终重命名/database/migrations文件夹上的表名尝试在用户模型中更改此项: protected $table = 'users'; 为此: protected $table = 'members'; 另外,在config\auth.php 另外,在这

我使用的是Laravel5.2,我想自定义默认的“users”表名。 我发现这个问题有多个答案,所以通过测试所有答案,它不起作用:
通过更改
/App/config/Auth.php
文件,添加
'table'=>'members'
,并最终重命名
/database/migrations
文件夹上的表名

尝试在
用户
模型中更改此项:

protected $table = 'users';
为此:

protected $table = 'members';
另外,在
config\auth.php


另外,在这些更改后清除所有缓存。

尝试在
用户
型号中更改此选项:

protected $table = 'users';
为此:

protected $table = 'members';
另外,在
config\auth.php


另外,在这些更改后清除所有缓存。

最终我找到了解决方案, 首先,您必须编辑2014\u 10\u 12\u000000\u create\u users\u table.php

public function up()
{
    Schema::create('users', function (Blueprint $table) {
        $table->increments('id');
        $table->string('name');
        $table->string('email')->unique();
        $table->string('password', 60);
        $table->rememberToken();
        $table->timestamps();
    });
}

public function down()
{
    Schema::drop('users');
}
并将
用户
更改为
成员

然后运行artisan migrate命令

现在,添加
protected$table='members'在您的应用程序/用户模型中。在App/config/Auth.php文件中,在用户提供者部分添加
'table'=>'members',
,使其成为:

'providers' => [
    'users' => [
        'driver' => 'eloquent',
        'model' => App\User::class,
        'table' => 'members',
    ],
],
    protected function validator(array $data)
{
    return Validator::make($data, [
        'name' => 'required|max:255',
        'email' => 'required|email|max:255|unique:members',
        'password' => 'required|confirmed|min:6',
    ]);
}
最后,对于app/Http/Controllers/Auth/AuthController.php
文件中的验证规则,编辑validator方法,使其成为:

'providers' => [
    'users' => [
        'driver' => 'eloquent',
        'model' => App\User::class,
        'table' => 'members',
    ],
],
    protected function validator(array $data)
{
    return Validator::make($data, [
        'name' => 'required|max:255',
        'email' => 'required|email|max:255|unique:members',
        'password' => 'required|confirmed|min:6',
    ]);
}

因此,我们将
unique:users
替换为
unique:members
。就这样。

我终于找到了解决办法, 首先,您必须编辑2014\u 10\u 12\u000000\u create\u users\u table.php

public function up()
{
    Schema::create('users', function (Blueprint $table) {
        $table->increments('id');
        $table->string('name');
        $table->string('email')->unique();
        $table->string('password', 60);
        $table->rememberToken();
        $table->timestamps();
    });
}

public function down()
{
    Schema::drop('users');
}
并将
用户
更改为
成员

然后运行artisan migrate命令

现在,添加
protected$table='members'在您的应用程序/用户模型中。在App/config/Auth.php文件中,在用户提供者部分添加
'table'=>'members',
,使其成为:

'providers' => [
    'users' => [
        'driver' => 'eloquent',
        'model' => App\User::class,
        'table' => 'members',
    ],
],
    protected function validator(array $data)
{
    return Validator::make($data, [
        'name' => 'required|max:255',
        'email' => 'required|email|max:255|unique:members',
        'password' => 'required|confirmed|min:6',
    ]);
}
最后,对于app/Http/Controllers/Auth/AuthController.php
文件中的验证规则,编辑validator方法,使其成为:

'providers' => [
    'users' => [
        'driver' => 'eloquent',
        'model' => App\User::class,
        'table' => 'members',
    ],
],
    protected function validator(array $data)
{
    return Validator::make($data, [
        'name' => 'required|max:255',
        'email' => 'required|email|max:255|unique:members',
        'password' => 'required|confirmed|min:6',
    ]);
}

因此,我们将
unique:users
替换为
unique:members
。就是这样。

我一直收到一条错误消息:SQLSTATE[42S02]:找不到基表或视图:1146表'telestuct.users'不存在尝试跟踪错误以找出确切原因,因为我在5,2,29中的任何其他地方都看不到硬编码的
用户
表,我一直收到一条错误消息:SQLSTATE[42S02]:找不到基表或视图:1146表“telestruct.users”不存在尝试跟踪错误以找出其确切原因,因为我在5,2,29中的任何其他位置都看不到硬编码的
用户
表,