Как реализовать выподающий список со значениями из массива в GridView yii2?
Как реализовать выпадающий список со значениями из массива в каждой ячейки в колонке , и если в одной колонке выбрано значение, то в других выпадающих списках оно должно исчезнуть в GridView yii2?
'columns' => [
['class' => 'yii\grid\SerialColumn'],
[
'attribute' => 'expert_date',
'value' => ?????
]
что должно быть в Value??? и остальных свойствах?
Ответы (1 шт):
Вот посмотри, может поможет чем:
<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
[
'attribute' => 'custom_attribute',
'value' => static function ($model) {
/** @var $model \frontend\models\ExampleModel */
// В каждой ячейке
return Html::dropDownList('name', null,
ArrayHelper::getColumn($model->relationModels, 'column'));
},
'format' => 'raw', // Значение будет отображено как есть
'filter' => ['custom_1', 'custom_2'], // Выпадающий список в фильтре
],
],
]) ?>
... и если в одной колонке выбрано значение, то в других выпадающих списках оно должно исчезнуть в GridView yii2?
Вот непонятна постановка вопроса))) Опиши по подробнее или у заказчика спроси, должно исчезать или нет)
Насколько я понял, ты хочешь запихнуть в ячейку каждого ряда еще какие-то дополнительные фильтры?
Если да, то в принципе можешь, но это жесть)
Мне кажется тебе нужен отдельный crud и реализовывать фильтрацию на базовых фильтрах, а не пихать еще один столб)