Приведение типов timestamp-date [Datepicker & PostgreSQL]
Добавлено: 2022.04.15, 08:39
Всем привет!
Использую в админке виджет Datepicker, который отправляет в модель поиска дату в формате "dd.mm.yyyy", однако по умолчанию значения в атрибутах created_at/updated_at модели пользователя хранятся в integer (стандартное Yii'шное решение). Поэтому в уже упомянутой модели поиска использую вот такое решение:
как видно из конструкции, она по синтаксису применима лишь к работе с PostgreSQL. А что если будет переход на MySQL? Выходит, только переписывать? Нет более изящного решения?
Использую в админке виджет Datepicker, который отправляет в модель поиска дату в формате "dd.mm.yyyy", однако по умолчанию значения в атрибутах created_at/updated_at модели пользователя хранятся в integer (стандартное Yii'шное решение). Поэтому в уже упомянутой модели поиска использую вот такое решение:
Код: Выделить всё
if ($this->created_at)
$query->andFilterWhere(['=', 'to_timestamp(created_at)::date', date('Y-m-d', strtotime($this->created_at))]);
if ($this->updated_at)
$query->andFilterWhere(['=', 'to_timestamp(updated_at)::date', date('Y-m-d', strtotime($this->updated_at))]);