将值分配给User类变量

时间:2019-09-16 16:14:34

标签: laravel

在登录过程中,我尝试将变量添加到我的User类模型中,该变量不想存储在数据库中。所以我像这样扩展了User.php:

private $roles;
protected $appends = ['roles'];

public function getRolesAttribute()
{
    //dd($this->roles);
    return $this->roles;
}

public function setRolesAttribute($value)
{
    $this->roles = ($value);
}

在我的登录课程中,我尝试分配一些信息,如下所示: $ user-> roles = $ ldap_roles;

但是不幸的是,数据没有保存,当我在刀片中调用Auther :: User()时,角色值是null,或者最好不要设置。我想问题是用户从未真正被保存过,但是正如我之前所说,我不想将ldap_roles信息存储在数据库中。

有什么提示吗?

谢谢 斯蒂芬


嗨, 因此,我用新的列角色更新了表,并在其中存储了LDAP组。每次登录后,我分配角色并进行更新。我对这个解决方案并不满意,但找不到其他方法。

        $user->roles = json_encode($ldap_roles);
        $user->update();

0 个答案:

没有答案