Привет, ребята, я видел много учебников Yii 2 RBAC, но я не могу оценить, как реализовать правила. В руководстве Yii 2 они представили, как создаются правила, но на самом деле не могут быть реализованы в поведении контроллера или где-то еще. Мне действительно нужно какое-то просветление по этому поводу.Yii2 RBAC Правило реализация
Теперь у меня есть система загрузки документов, в которой у меня есть две роли: а именно: &. В принципе, роль администратора может выполнять все, в то время как роль кодера может создавать только собственные, собственные представления, собственные обновления и собственные права на удаление. Я уже создал правило с именем encodedBy.
Это мой код в моем EncoderRule
namespace app\rbac; use yii\rbac\Rule;
/** * Checks if encoded_by matches user passed via params */ class EncoderRule extends Rule {
public $name = 'encodedBy';
/**
* @param string|integer $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 boolean a value indicating whether the rule permits the role or permission it is associated with.
*/
public function execute($user, $item, $params)
{
return isset($params['document']) ? $params['document']->encoded_by == $user : false;
} }
хранить данные в таблице «документ», где у меня есть поле с именем «encoded_by» Я надеюсь, что вы, ребята, можете помочь мне в этом. Большое спасибо !!!
Это видео действительно помогает объяснить RBAC тем, кто не знает, как это работает: https://www.youtube.com/watch?v = vLb8YATO-HU – TheStoryCoder