Yii2 GridView DateRange Picker не фильтрует сегодняшнюю дату - PullRequest
0 голосов
/ 07 августа 2020

Я использую Kartik GridView и хочу отфильтровать столбец по диапазону дат.

Вот код:

<?php Pjax::begin(); echo GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'columns' => [
        [
            'attribute' => 'date_start',
            'format' => ['date','php:d.m.Y'],
            'filterType' => GridView::FILTER_DATE_RANGE,
            'filterWidgetOptions' => [
                'convertFormat'=>true,
                'pluginOptions' => [
                    'opens'=>'right',
                    'locale' => [
                        'cancelLabel' => 'Clear',
                        'format' => 'd.m.Y',
                    ],
                ],
            ],
        ],
    ],
    
    // ** Other stuff ** 
    
]); Pjax::end(); ?>

Он работает нормально, когда я выбираю какой-то диапазон в дате - сборщик. Но когда я хочу выбрать СЕГОДНЯ после начальной загрузки страницы (другими словами, просто откройте фильтр диапазона дат и нажмите «Применить» (по умолчанию выбрано «сегодня»), ничего не произойдет - фильтрация не срабатывает и даже значение в поле фильтра не изменяется.

Как я вижу, компонент фильтра не запускает фильтрацию, потому что значение по умолчанию в фильтре сегодня, а не «пустая строка», я передаю фильтру в searchModel как значение по умолчанию.

Что нужно изменить, чтобы фильтр работал со значением «сегодня»? Может быть, есть способ вручную активировать фильтрацию после того, как я нажму «Применить»?

Спасибо!

...