Учусь использовать RBAC. Просмотрел уже кучу примеров. Делаю все в точности как в примере, но не выполняется rbac/init
вот мой rbac контроллер
namespace app\commands;
use Yii;
use yii\console\Controller;
class RbacController extends Controller
{
public function actionInit()
{
$auth = Yii::$app->authManager;
$rule = new \app\rbac\UserGroupRule();
$auth->add($rule);
// добавляем разрешение "createPost"
$createPost = $auth->createPermission('createPost');
$createPost->description = 'Create a post';
$auth->add($createPost);
// добавляем разрешение "updatePost"
$updatePost = $auth->createPermission('updatePost');
$updatePost->description = 'Update post';
$auth->add($updatePost);
// добавляем роль "author" и даём роли разрешение "createPost"
$guest = $auth->createRole('guest');
$guest->ruleName = $rule->name;
$auth->add($guest);
$auth->addChild($guest, $createPost);
//moderator
$moderator = $auth->createRole('moderator');
$moderator->ruleName = $rule->name;
$auth->add($moderator);
$auth->addChild($moderator, $updatePost);
$auth->addChild($moderator, $guest);
// добавляем роль "admin" и даём роли разрешение "updatePost"
// а также все разрешения роли "author"
$admin = $auth->createRole('admin');
$admin->ruleName = $rule->name;
$auth->add($admin);
$auth->addChild($admin, $moderator);
// Назначение ролей пользователям. 1 и 2 это IDs возвращаемые IdentityInterface::getId()
// обычно реализуемый в модели User.
$auth->assign($guest, 3);
$auth->assign($moderator, 2);
$auth->assign($admin, 1);
}
}
В косноли делаю rbac/init, выдает ошибку:
PHP Fatal Error 'yii\base\ErrorException' with message 'Call to a member function add() on null'
in D:\OpenServer\domains\KNDR\commands\RbacController.php:21
Stack trace:
#0 [internal function]: yii\base\ErrorHandler->handleFatalError()
#1 {main}
Где ошибка? Убил полдня, вообще не понимаю в чем проблема. Спасибо!