reglas Yii2 rbac problema

Pasé mucho tiempo para entender cómo funcionan las reglas de iii rbac. Pero no puedo hacer que esto funcione. Tengo las tablas en db

auth_item, auth_item_child, auth_assignment, auth_rule

A tiene el controlador RbacController en yii docs, tengo la clase AuthorRule

author_id == $user : false; } } 

Entonces, al final tengo dos roles: administrador y autor. el autor puede crear publicaciones (en mi caso, correos electrónicos, porque la tabla en db se llama correo electrónico) y puede (se supone que) actualizar las publicaciones propias. el administrador puede actualizar publicaciones y hacer todo lo que el autor puede hacer.

en el controlador que maneja el modelo de correo electrónico (la tabla es un correo electrónico) tengo el método actionUpdate. Para permitir que el autor actualice las publicaciones propias (correos electrónicos), escribí este código

 if(Yii::$app->user->can('updatePost')){ $model = $this->findModel($id); if (!Yii::$app->user->can('updateOwnPost', ['email' => $model])) { throw new ForbiddenHttpException('Вы не администратор.'); } if ($model->load(Yii::$app->request->post()) && $model->save()) { return $this->redirect(['view', 'id' => $model->id]); } else { return $this->render('update', [ 'model' => $model, ]); } } 

El código de AuthorRule es

 author_id == $user : false; } } 

Cualquier ayuda apreciada! Gracias

Solutions Collecting From Web of "reglas Yii2 rbac problema"