0

yii2mod/yii2-rbacこの URL - https://github.com/yii2mod/yii2-rbac in yii2-basicからインストールしました。

所有者データの使用/許可を除いて、すべて正常に機能しています。

このリンクから: https://www.yiiframework.com/doc/guide/2.0/en/security-authorization ルート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
{
    /**
     * @var string
     */
    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;
    }
}

しかし、パーミッションにルールを追加しようとすると (AuthorRuleまたはisAuthorパーミッションの下で updateOwnRecord を作成すると、エラーが発生します。ルールが存在しません。

ここで何が欠けていますか?

4

1 に答える 1