首页 > 解决方案 > 无法更改 Laravel 的 Auth 表

问题描述

我的laravel有一个奇怪的问题。我正在使用 laravel 的身份验证,但我有一个不同的数据库。因此,我使用 更改了表的名称protected $table = 'compte';,但是一旦我尝试了一些需要我的表的操作(例如登录),除非我尝试注册新用户,否则它不会返回错误。通过注册,它给了我它仍然使用dbname.users而不是dbname.compte.
这是我在 User 模型中所做的更改:

protected $table = 'compte';
protected $primaryKey = 'id_compte';
public $timestamps = false;


// SET A DIFFERENT FIELD FOR THE PASSWORD DUE TO THE DB
public function getAuthPassword() { 
    return $this->mdp_compte; 
}

标签: phpdatabaselaravelauthenticationmodel

解决方案


将表名更改compteconfig/auth.php. 还可以通过命令清除所有缓存 php artisan cache:clear

这是默认代码

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

你需要改变它

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

推荐阅读