2017-06-05 4 views
1

私を助けることができる人がいますか? レイアウトタブメニューのドロップダウンを行います。 この私のドロップダウン。Yii2 - navbarのドロップダウン行をユーザの種類に基づいて無効/読み取り専用

[ 
     'label' => '(' . Yii::$app->user->identity->username . ')', 
     'items' => [ 
      ['label' => 'Change Password', 'url' => ['/site/changepassword']], 
      ['label' => 'User Setting', 'url' => ['/user']], 
      ['label' => 'test', 'url' => ['/leave-record/leave']], 
      '<li class="dropdown-header"></li>', 
      ['label' => 'Logout', 'url' => ['/site/logout'], 
           'linkOptions' => ['data-method' => 'post']], 
     ], 
    ], 

ユーザーモデルに3つのユーザータイプがあります。 1.マスター管理 2.通常の管理者 3.普通のユーザー

マスター管理者のログインの場合、彼はドロップダウンのすべての行にアクセスできます。その後、通常のadminログイン行「User Setting」が無効になった場合。

[ 
     ['label' => 'Change Password', 'url' => ['/site/changepassword']], 
     [ 
     'label' => 'User Setting', 
      'url' => ['/user'], 
      'visible' => Yii::$app->User->can('masterAdmin'), 
     ], 
], 

あなたは$チェック

$check = ((Yii::$app->User->can('masterAdmin') || Yii::$app->User->can('admin')) ? TRUE : FALSE; 

を使用することができ、2つのユーザタイプのために:あなたは目に見える属性が

例えば、適切な条件を割り当てる使用することができます項目の

答えて

0

... 
'label' => 'User Setting', 
    'url' => ['/user'], 
'visible' =>$check, 
+0

ありがとうございました@scais it's work –

+0

2つのユーザータイプを作成する方法は、その行にアクセスできますか? –

+1

答えが更新されました – scaisEdge

関連する問題