Laravel - ошибка при заполнении модели с другим форматом даты - PullRequest
0 голосов
/ 14 мая 2018

У меня есть модель с обычными временными метками (created_at, updated_at)

Моя модель обладает свойством protected $dateFormat = 'U';, чтобы хранить дату как метки времени Unix.

Проблема возникает, когда я пытаюсь заполнить таблицу этими значениями.

В частности, я получаю эту ошибку:

PDOException::("SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect datetime value: '1526321484' for column 'updated_at' at row 1")

Что с ней не так?

РЕДАКТИРОВАТЬ:

Я использую MySQL 5.6.38.

1 Ответ

0 голосов
/ 15 мая 2018

Как указывается в сообщении об ошибке, вы не используете правильный формат даты и времени для сохранения данных в своей базе данных.Поля created_at и updated_at требуют значения в формате datetime, который вы сейчас пытаетесь сохранить: 1526321484, который является неправильным форматом.Если вы действительно хотите сэкономить время, как это, вы должны дать created_at и updated_at другой тип данных, например целое число, что-то вроде этого:

$table->integer('created_at');
$table->integer('updated_at');

Если вы использовали это для созданияВремя создания и обновления:

$table->timestamps();

Вы должны удалить его, так как он сгенерировал файлы с форматом даты и времени.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...