Использую 2 виджета
"kartik-v/yii2-widgets": "^3.4",
"kartik-v/yii2-field-range": "^1.3"
Но в таком формате даты yyyy-mm-dd она записи нормально выводит от поиска, в таком формате dd.mm.yyyy ничего вообще не происходит. Указывается в ajax что 200 код и нет никаких ошибок.
Моя реализация в UserSearch
<?php
....
class UserSearch extends User
{
public $nameEmployee;
public $date_from;
public $date_to;
public function rules()
{
return [
...
[['date_from', 'date_to'], 'date', 'format' => 'php:Y-m-d']
];
}
public function scenarios()
{
return Model::scenarios();
}
public function search($params)
{
$query = User::find()->where(['active' => User::WORK]);
// add conditions that should always apply here
$dataProvider = new ActiveDataProvider([
'query' => $query,
]);
...
$query->andFilterWhere(['like', 'username', $this->username])
...
/** Вот тут должно конвертировать в любом случае что пришло в таком формате 2017-09-10 что пришло в таком формате 10.09.2017, верно же? она все равно будет в unix формате */
->andFilterWhere(['>=', 'created_at', $this->date_from ? strtotime($this->date_from.' 00:00:00') : null])
->andFilterWhere(['<=', 'created_at', $this->date_to ? strtotime($this->date_to.' 23:59:59') : null]);
return $dataProvider;
}
}
И в gridview
[
'filter' => DatePicker::widget([
'model' => $searchModel,
'attribute' => 'date_from',
'attribute2' => 'date_to',
'type' => DatePicker::TYPE_RANGE,
'separator' => '-',
'pluginOptions' => ['format' => 'dd.mm.yyyy'],
]),
'attribute' => 'created_at',
'format' => 'datetime',
'label' => 'Дата приема'
],