Почему в функции Yii2 dateTime () время не записывается? - PullRequest
0 голосов
/ 11 октября 2018

Я сгенерировал CRUD с Gii, но мои миграции не работают, как ожидалось.

'id' => $this->primaryKey(),
'student' => $this->string(255)->notNull(),
'diploma_teacher' => $this->string(255)->notNull(),
'type_of_work' => $this->string(255)->notNull(),
'student_classification' => $this->string(255)->notNull(),
'title' => $this->string(255)->notNull(),
'created_at' => $this->dateTime()->notNull(),
'updated_at' => $this->dateTime()->notNull(),

При создании новой дипломной работы поле для create_at и updated_at

0000-00-00 00:00:00
0000-00-00 00:00:00

Ответы [ 2 ]

0 голосов
/ 12 октября 2018

Я бы предложил вам объявить create_at и update_at следующим образом,

'create_at' => $this->dateTime()->notNull()->defaultExpression('now()'),
'update_at' => $this->dateTime()->notNull()->defaultExpression('now()')->append('ON UPDATE CURRENT_TIMESTAMP')
0 голосов
/ 11 октября 2018

Вы должны добавить выражение по умолчанию

'created' => $this->dateTime()->notNull()->defaultExpression('now()')
...