Comments (9)
Hi, Try to add this code to backend main.php configuration
'modules' => [
'rbac' => [
'class' => 'yii2mod\rbac\Module',
],
],
And check the following url - /rbac/assignment/index
Also check your routes configuration for backend application, here is my config
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'<module:\w+>/<controller:\w+>/<action:\w+>' => '<module>/<controller>/<action>',
],
],
from yii2-rbac.
I use this configuration for my advanced template and I have the following list of routes:
- http://backend.project.dev/rbac/assignment/index
- http://backend.project.dev/rbac/role/index
- http://backend.project.dev/rbac/permission/index
- http://backend.project.dev/rbac/route/index
- http://backend.project.dev/rbac/rule/index
from yii2-rbac.
@igor-chepurnoi
Thanks for the answer, but i still can't open the module's pages.
Seems, that it is not a typical problem.
frontend main.php
:
<?php
$params = array_merge(
require(__DIR__ . '/../../common/config/params.php'),
require(__DIR__ . '/../../common/config/params-local.php'),
require(__DIR__ . '/params.php'),
require(__DIR__ . '/params-local.php')
);
return [
'id' => 'app-frontend',
'basePath' => dirname(__DIR__),
'bootstrap' => ['log'],
'controllerNamespace' => 'frontend\controllers',
'modules' => [
'rbac' => [
'class' => 'yii2mod\rbac\Module',
],
],
'components' => [
'request' => [
'csrfParam' => '_csrf-frontend',
],
'user' => [
'identityClass' => 'common\models\User',
'enableAutoLogin' => true,
'identityCookie' => ['name' => '_identity-frontend', 'httpOnly' => true],
],
'session' => [
// this is the name of the session cookie used for login on the frontend
'name' => 'advanced-frontend',
],
'log' => [
'traceLevel' => YII_DEBUG ? 3 : 0,
'targets' => [
[
'class' => 'yii\log\FileTarget',
'levels' => ['error', 'warning'],
],
],
],
'errorHandler' => [
'errorAction' => 'site/error',
],
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'<module:\w+>/<controller:\w+>/<action:\w+>' => '<module>/<controller>/<action>',
],
],
],
'params' => $params,
];
backend main.php
:
<?php
$params = array_merge(
require(__DIR__ . '/../../common/config/params.php'),
require(__DIR__ . '/../../common/config/params-local.php'),
require(__DIR__ . '/params.php'),
require(__DIR__ . '/params-local.php')
);
return [
'id' => 'app-backend',
'basePath' => dirname(__DIR__),
'controllerNamespace' => 'backend\controllers',
'bootstrap' => ['log'],
'modules' => [
'rbac' => [
'class' => 'yii2mod\rbac\Module',
],
],
'components' => [
'request' => [
'csrfParam' => '_csrf-backend',
],
'user' => [
'identityClass' => 'common\models\User',
'enableAutoLogin' => true,
'identityCookie' => ['name' => '_identity-backend', 'httpOnly' => true],
],
'session' => [
// this is the name of the session cookie used for login on the backend
'name' => 'advanced-backend',
],
'log' => [
'traceLevel' => YII_DEBUG ? 3 : 0,
'targets' => [
[
'class' => 'yii\log\FileTarget',
'levels' => ['error', 'warning'],
],
],
],
'errorHandler' => [
'errorAction' => 'site/error',
],
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'<module:\w+>/<controller:\w+>/<action:\w+>' => '<module>/<controller>/<action>',
],
],
'urlManagerFrontend' => [
'class' => \yii\web\UrlManager::class,
'baseUrl' => '/',
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
'<action:(.*)>' => '/site/<action>',
'<module:\w+>/<controller:\w+>/<action:\w+>' => '<module>/<controller>/<action>',
],
],
],
'params' => $params,
];
from yii2-rbac.
You don't need to add this module to frontend, add it only to backend configuration.
from yii2-rbac.
I will try to re-install your module this evening.
It's probably my fault, but i don't know where is it.
from yii2-rbac.
You can try to create own module in the backend app, and try to use it. Maybe you have some errors with your apache configuration
from yii2-rbac.
@igor-chepurnoi ok, will try later, thanks
from yii2-rbac.
The my main problem was an incorrect urlManager rule.
Incorrect rule: '<action:(.*)>' => 'site/<action>'
Correct rule: '<controller:\w+>/<action:\w+>' => '<controller>/<action>'
After this fix i got another error about translation.
Google said that i need to connect i18n module, so i did it.
The way to get working module:
- composer require
- add module to config
- add authManger to config
- fix urlManager rule
- add i18n to config
'modules' => [
'rbac' => [
'class' => 'yii2mod\rbac\Module',
],
],
'components' => [
'urlManager' => [
'baseUrl' => '/admin',
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
],
],
'authManager' => [
'class' => 'yii\rbac\DbManager',
'defaultRoles' => ['guest', 'user'],
],
'i18n' => [
'translations' => [
'yii2mod.rbac' => [
'class' => 'yii\i18n\PhpMessageSource',
'basePath' => '@yii2mod/rbac/messages',
],
],
],
],
from yii2-rbac.
Ok, nice.
from yii2-rbac.
Related Issues (20)
- Error When Create New Role or Permission HOT 4
- Update RouteModel.php to future proof for php 7.2 HOT 2
- Do create role and permission function actually work? HOT 4
- How to get a list of standard routes(not modules) HOT 8
- Useless RBAC route from database
- How I can pass parameters to a rule? HOT 1
- Can I add my route to the list of routes? HOT 5
- No error message but not save for the field with date type only.
- Need a help for how to stop open link without login HOT 1
- AuthItemSearch failing HOT 1
- Can't install Yii2 RBAC Extension HOT 1
- where and how to add rule?
- RBAC whitelist in config does not allow POST
- PHP Fatal Error – yii\base\ErrorException
- My assignment Page is empty
- Filter access to controller actions of a module HOT 1
- CSRF validation 400 (Bad Request).
- Display a permission description instead of a name
- Id not integer in the assigment/view route HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from yii2-rbac.