【问题标题】:Save additional data while creating new role with Yii Rights Module使用 Yii 权限模块创建新角色时保存额外数据
【发布时间】:2014-12-06 11:44:08
【问题描述】:

我有 Yii 权限模块http://www.yiiframework.com/extension/rights/

我想要的是保存其他数据,即在创建角色时在 authItem 表中创建角色的用户的 ID。通过查看代码,我发现 AuthItemController.php 中的以下行可以帮助我

// Create the item
$item = $this->_authorizer->createAuthItem($formModel->name, $type, $formModel->description, $formModel->bizRule, $formModel->data);

我不知道如何使用此代码存储其他数据。请帮帮我。

【问题讨论】:

    标签: php yii


    【解决方案1】:

    好的,通过更多解决方法我找到了解决方案。

    我在 authitem 表中创建了新字段 created_by。

    RAuthItemBehavior.php

    中添加了这个功能
    /**
         * add the id of user - who created the role - in db
         * @return doesn't return anything
         */
        public function addItemCreator()
        {
            Yii::app()->db->createCommand()
            ->update('authitem', array(
                'created_by'=>Yii::app()->user->id,
            ), 'name=:name', array(':name'=>$this->owner->name));
        }
    

    并通过添加此行在创建操作中调用 AuthItemController.php 上的该函数

    $item->addItemCreator();
    

    之后

    $item = $this->_authorizer->attachAuthItemBehavior($item);
    

    欢迎提出任何改进建议。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-24
      • 2017-02-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多