在登录过程中,我尝试将变量添加到我的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();