嗨开发人员我是 YII 新手,我已经安装了 YII2 框架并想要一个 RBAC 我已经安装了 mdmsoft/yii2-admin 模块,但是我不知道如何创建 RULE 类,在哪里创建它以及如何使用。当我在管理部分创建一个角色时,它说,输入一个类名。我不知道如何创建和使用 YII 的 RULE 功能。我附上了屏幕截图。
问问题
1208 次
1 回答
0
如果您使用的是高级模板,请按照以下步骤操作;
- 在下创建目录
frontend
并重命名rbac
- 在这个新目录下创建一个文件,比如
AuthorRule.php
. 这是官方文档中给出的示例文件;
namespace app\rbac; use yii\rbac\Rule; use app\models\Post; /** * Checks if authorID matches user passed via params */ class AuthorRule extends Rule { public $name = 'isAuthor'; /** * @param string|int $user the user ID. * @param Item $item the role or permission that this rule is associated with * @param array $params parameters passed to ManagerInterface::checkAccess(). * @return bool a value indicating whether the rule permits the role or permission it is associated with. */ public function execute($user, $item, $params) { return isset($params['post']) ? $params['post']->createdBy == $user : false; } }
- 下一步是导航到
http://localhost/path/to/index.php?r=admin/rule
并创建一个带有类名的新规则\app\rbac\AuthorRule
roles
最后,您可以permissions
根据需要添加新规则。
您可以阅读官方文档以获取有关规则的更多信息;官方文档。
于 2018-04-24T10:29:29.097 回答