Я использую 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 как значение по умолчанию.
Что нужно изменить, чтобы фильтр работал со значением «сегодня»? Может быть, есть способ вручную активировать фильтрацию после того, как я нажму «Применить»?
Спасибо!