Yii2 Выпадающий виджет с динамическими элементами

Я хочу выпадающий виджет в yii2 с динамическими элементами. Как это возможно? После этого я сталкиваюсь с ошибкой, которая требуется. Что не так в моем коде?

$items = [];
foreach ($all_label as $each_label) {               

      $items[$each_label->id_label]['id_label'] = $each_label->id_label;
      $items[$each_label->id_label]['label'] = $each_label->label_name;
}
print_r($items);

O:P-

Array
(
[5] => Array
    (
        [id_label] => 5
        [label] => Label1
    )

[6] => Array
    (
        [id_label] => 6
        [label] => Label2
    )

[9] => Array
    (
        [id_label] => 9
        [label] => Label3
    )

)       

echo Dropdown::widget([
    'items' => [
                $items
            ],                                     
    ]);

person Subhankar Bhattacharjee    schedule 21.03.2016    source источник


Ответы (1)


Хорошо, после проверки спецификации, похоже, проблема в том, что вы используете id_label, который не является допустимой опцией для виджета. Вам нужно не указывать:

$items = [];
foreach ($all_label as $each_label) {               
     $items[$each_label->id_label]['label'] = $each_label->label_name;
}

Если это не дает нужных вам значений, попробуйте адаптироваться к этому:

$items = [];
foreach ($all_label as $each_label) {               
     $items[$each_label->id_label]['label'] = $each_label->label_name;
     $items[$each_label->id_label]['options']['value'] = $each_label->id_label_;
}

http://www.yiiframework.com/doc-2.0/yii-bootstrap-dropdown.html# $ items-detail

person Asped    schedule 21.03.2016