Yii2. Сохранение даты в БД в unix формате

имеется строка в таблице: publish_at(int11). в поле ввода даты использую виджет "Kartik DateTimePicker". Формат даты в бд должен быть "unix".

Когда создается статья, var_dump показывает что поле 'publish_at' => int 1; При этом POST request: NewsForm[publish_at]: 2020/07/09 14:45. Т.е Дата отправляется в таком виде.

beforeSave в модели:

    public function beforeSave($insert)
    {
        DateTime::createFromFormat('yyyy/mm/dd hh:ii', $this->publish_at)->getTimestamp();
        return parent::beforeSave($insert);
    }

Вьюшка:

                    <div class="date-picker-wrapper">
                        <?= $form->field($model, 'publish_at')->widget(DateTimePicker::class, [
                            'options' => [
                                'placeholder' => Yii::t('app', 'Выберите дату публикации'),
                            ],
                            'pluginOptions' => [
                                'autoclose' => true,
                                'format' => 'yyyy/mm/dd hh:ii',
                                'todayHighlight' => true,
                            ]
                        ]); ?>
                    </div>

Возможно требуется правило валидации? Посоветуйте, пожалуйста, что не так?


Ответы (0 шт):