簡體   English   中英

如何在Yii2中將AccessFilter中的變量傳遞給Controller

[英]How to pass a variable from AccessFilter to Controller in Yii2

我有一個AccessFilter類

class ProjectAccessControl extends \yii\base\ActionFilter
{
   public $a;
   /**
    * @inheritdoc
    */
   public function beforeAction($action)
   {
        switch ($action->id) {
          case 'view':
             // code here
             break;
        }
   }

在控制器中,我在behavior()方法中撤銷此AccessFilter,如下所示:

public function behaviors()
{
    return [
        'access' => [
            'class' => ProjectAccessControl::className(),
        ]
    ];
}

現在我想將$a變量從AccessFilter傳遞給Controller中的任何操作。 怎么做?

您只需在控制器中添加一個變量,例如:

public $a;

並在您的過濾器中使用它:

$this->owner->a = $this->a;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM