如果设置了特定的APP_ENV,如何更新用户模型连接

时间:2019-04-09 17:22:44

标签: laravel-5 eloquent

当前正在设置一个沙箱以反映我的实时环境,但是如果我的APP_ENV设置为“实时”,我需要将用户表连接设置为其他内容

现在,理想情况下,在用户模型中,我希望执行以下操作:

class User extends Authenticatable
    public function __construct()
    {
        if (\App::environment('live')) {
            protected $connection = 'ot20';
        }
    }

但事实并非如此。我对此有任何想法吗?

Citti

1 个答案:

答案 0 :(得分:0)

$connection是普通的类属性,因此您只需将其设置为新值即可:

class User extends Authenticatable
    public function __construct(array $attributes = [])
    {
        parent::__construct($attributes);

        if (\App::environment('live')) {
            $this->connection = 'ot20';
        }
    }

关于您的评论:我不清楚您的意思,但是您可以创建一个自定义用户模型,并通过在providers.users.model中设置config/auth.php来告诉Laravel使用它。