yii2mod / yii2-rbac

RBAC Manager for Yii 2

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Can I add my route to the list of routes?

LordKino opened this issue · comments

In the configuration file, I can specify the route:

'urlManager' => [
'showScriptName' => false,
'enablePrettyUrl' => true,
'rules' => [
'user/<user_id:\d+>' => 'user/<user_id>',
'user/<user_id:\d+>/messages' => 'messages/<user_id>',
]...

How to add them to the list of yii2mod routes?

Hi, you can add some route via admin panel. Did you try it?

I do not see fields for adding a route in the interface:
https://ibb.co/jdii29
And in the view there is no input field:
`<?php
use yii\helpers\Html;
use yii\helpers\Json;
use yii2mod\rbac\RbacRouteAsset;

RbacRouteAsset::register($this);

/* @var $this yii\web\View /
/
@var $routes array */

$this->title = Yii::t('yii2mod.rbac', 'Routes');
$this->params['breadcrumbs'][] = $this->title;
$this->render('/layouts/_sidebar');

echo Html::encode($this->title);

echo Html::a(Yii::t('yii2mod.rbac', 'Refresh'), ['refresh'], [
'class' => 'btn btn-primary',
'id' => 'btn-refresh',
]);
echo $this->render('../_dualListBox', [
'opts' => Json::htmlEncode([
'items' => $routes,
]),
'assignUrl' => ['assign'],
'removeUrl' => ['remove'],
]); ?>
`

Which route I can use in the admin panel to add a new route?
/rbac/route does not allow to add.

commented

I also missing available routes of new controller I've created last time. Also I've I press the refresh button, the new routes (controller actions) don't appear. I've got also no error return by the ajax request

Hello everyone I know it's been a while on this issue, but for anyone on the future that get's to this point I would like to share the resolution to the issue.

What you need to do to make this work is to change the AccessControl class inside all of your controllers from yii\filters\AccessControl to yii2mod\rbac\filters\AccessControl this way when you refresh the routes inside the rbac\route view you'll have all the controllers and respective views added to the manager.

I hope this works for everyone.