无需在CakePHP中注销即可更新用户角色

时间:2013-08-29 02:40:11

标签: php cakephp

我有一个关于用户角色和基于它的重定向的问题,可以找到here。好吧,现在我有一个不同的问题,但源于此。

当用户被暂停时,他们在登录时的角色被“暂停”。如果用户填写表格,他们的暂停可以解除,但是,他们的角色仍然被设置为“暂停”。如何将用户角色从“已暂停”更改为“reg_user”或其他内容?

我尝试过以下

if(AuthComponent::user('role') == 'suspended'){
    $this->User->id = AuthComponent::user('id');
    $this->User->saveField('role', 'reg_user'); //udate their role in the database
    $this->set('role', 'reg_user');  //now set their role to reg_user
 }

然而,该用户的角色仍然设置为“暂停”,直到他们退出并重新登录。我宁愿不必这样做,但如果这是唯一的方式,那么我想这将是必须的。

1 个答案:

答案 0 :(得分:0)

我认为这会锻炼

$this->$User->role='reg_user';
$this->$User->save();