Вывести фильтр в Gridview в panelbeforetemplate

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
garytopor
Сообщения: 113
Зарегистрирован: 2014.07.21, 22:23

Вывести фильтр в Gridview в panelbeforetemplate

Сообщение garytopor »

Доброго времени суток!
Надо вывести виджет фильтра FILTER_SELECT2 (field multi_diet_param_id) в panelbeforeheader или вне таблицы/выше таблицы.

Код: Выделить всё

$columnsConfig = [
    [
        'class' => SerialColumn::class
    ],

    'id',
    'name',
    [
        'attribute' => 'multi_diet_param_id',
        'vAlign' => 'middle',
        'width' => '180px',
        'value' => function ($model, $key, $index, $widget) {
            return '';
        },
        'filterType' => GridView::FILTER_SELECT2,
        'filter' => $offerList,
        'filterWidgetOptions' => [
            'pluginOptions' => ['allowClear' => true],
            'options' => ['multiple' => true]
        ],
        'filterInputOptions' => ['placeholder' => 'Diet type'],
        'format' => 'raw'
    ],
    [
        'attribute' => 'idRestaurantType',
        'filter' => RestaurantType::selectList($type),
        'value' => function ($model) {
            $values = [];
            foreach ($model->restaurantTypes as $type) {
                $values[] = $type->name;
            }
            return implode(', ', $values);
        }
    ],
];
GridView::widget([
    'id' => 'restaurant',
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'instructionRef' => 'manage-restaurant',
    'noteKey' => $noteKey,
    'panelBeforeTemplate' => $panelBeforeTemplate,
    'formatter' => [
        'class' => Formatter::class,
        'nullDisplay' => '',
    ],
    'filterSelector' =>
       
    ,

    'actionButtons' => [
        [
            'text' => RestaurantBModule::t('app', 'Create a restaurant'),
            'url' => [
                'create'
            ],
            'visible' => Yii::$app->user->can(RestaurantBModule::ROLE_RESTAURANT_IMPROVER)
        ]
    ],
    'columns' => $columnsConfig,
])
Изображение

Идеи?
urichalex
Сообщения: 994
Зарегистрирован: 2015.08.07, 11:03

Re: Вывести фильтр в Gridview в panelbeforetemplate

Сообщение urichalex »

При генерации грида с SearchModel, gii создает файл _search.php
В нем уже реализован фильтр вне грида
garytopor
Сообщения: 113
Зарегистрирован: 2014.07.21, 22:23

Re: Вывести фильтр в Gridview в panelbeforetemplate

Сообщение garytopor »

Так как это beforetemplate, так что фильтр все таки находится внутри грида :(
garytopor
Сообщения: 113
Зарегистрирован: 2014.07.21, 22:23

Re: Вывести фильтр в Gridview в panelbeforetemplate

Сообщение garytopor »

Решил!
'filterUrl' => 'http://admin.dh.local/restaurant/restaurant/index',

Всем спасибо ;)
Ответить