【问题标题】:Can't change table of Laravel's Auth无法更改 Laravel 的 Auth 表
【发布时间】:2019-03-27 19:32:30
【问题描述】:

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

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; 
}

【问题讨论】:

  • 您是否对 config/auth.php 文件进行了任何更改?如果不是,则有问题。
  • 我需要做哪些改变?我没有在 auth.php 中改变什么。

标签: php database laravel authentication model


【解决方案1】:

config/auth.php 中将表名更改为compte。 也通过命令清除所有缓存 php artisan cache:clear.

这是一个默认代码

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

你需要改变它

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

【讨论】:

  • 抱歉我的问题,但我需要在 auth.php 中更改什么?
  • 你应该改变 providers 数组。
  • 我在使用 php artisan make:auth 后没有更改我的原始文件。那么我需要将文件 User.php 的名称更改为 Compte.php 吗?我试过你的方法,但没有奏效。它仍然使用users
猜你喜欢
  • 2016-10-09
  • 2015-11-27
  • 2016-04-12
  • 2019-09-01
  • 1970-01-01
  • 2020-03-08
  • 2020-05-09
  • 1970-01-01
相关资源
最近更新 更多