2016-09-28 48 views
1

我在我的yii2基本應用程序中使用RBAC根據角色爲用戶分配模塊。如何更新Yii2 Rbac中auth_assignment表中的賦值?

我將角色ID和user_id存儲在auth_assignment表中。

現在如果我在更新過程中更改用戶的角色。我也必須在auth_assignment表中更改它。現在我想從auth分配中刪除該用戶的所有條目,並在表中添加新條目。

問題是我找不到任何RBAC函數來更新auth_assignment表數據或刪除auth分配表數據。

在Yii2 Documentation removeAllAssignments()中有一個函數,但它截斷了整個表格,我只想刪除特定用戶的條目。

有沒有可用的功能?

回答

1

是的,有。

assign()將角色分配給用戶。
revoke()撤消用戶的角色。
revokeAll()撤銷用戶的所有角色。

要獲得分配給用戶的所有角色列表,您可以使用getRolesByUser()

+0

謝謝Bizley revokeAll()方法幫助了我。 –

+0

對,我會加上這個以及爲其他人回答。 – Bizley