2017-03-25 1 views
0

Ich habe ein Menü wie dieses

<?php 
NavBar::begin([ 
    'brandLabel' => Html::img('@web/images/cennos1.png', ['alt'=>Yii::$app->name]), 
    'brandUrl' => Yii::$app->homeUrl, 
    'brandOptions' => ['style' => 'margin-top:-7px;'], 
    'options' => [ 
     'class' => 'navbar-inverse navbar-fixed-top', 
    ], 
]); 
$menuItems = []; 
$menuItems[] = ['label' => 'Login', 'url' => ['/site/login']]; 
$menuItems[] = [ 
        'label' => 'Teams', 
        'items' => [   
         foreach ($teams as $team) { 
         ['label' => '' . $team->name .'', 'url' => ['team/preview','id' => $team->id]], 
         } 
        ], 
       ]; 

Ich habe versucht, wie die foreach-Schleife zu verwenden, um alle Teams als Drop-Down-Menü für Gastbenutzer zur Liste zu sehen, aber es hat nicht funktioniert. Bitte helfen Sie mir dabei. Entschuldigung für mein schlechtes Englisch. Danke.

Antwort

0

Dies ist vielleicht nicht der beste Weg, aber es funktioniert für mich.

function items($teams) 
    { 
     $items = []; 
     foreach ($teams as $team) { 
      array_push($items, ['label' => '' . $team->name .'', 'url' => Url::to(['team/preview', 'id' => $team->id])]); 
     } 
     return $items; 
    } 

NavBar::begin([ 
    'brandLabel' => Html::img('@web/images/cennos1.png', ['alt'=>Yii::$app->name]), 
    'brandUrl' => Yii::$app->homeUrl, 
    'brandOptions' => ['style' => 'margin-top:-7px;'], 
    'options' => [ 
     'class' => 'navbar-inverse navbar-fixed-top', 
    ], 
]); 
$menuItems = []; 
$menuItems[] = ['label' => 'Login', 'url' => ['/site/login']]; 
$menuItems[] = [ 
        'label' => 'Teams', 
        'items' => items($teams) 
       ]; 

Hoffe, dass es hilft,

+0

Danke. Es klappt :) –

Verwandte Themen