Как изменить updated_at с типа отметки времени на дату и время? - PullRequest
0 голосов
/ 02 июня 2019

Теперь поле updated_at имеет значение datetime(3), поэтому оно вызывает ошибку:

errors: "Trailing data"

Поскольку Laravel ожидает тип метки времени вместо даты и времени. Как сказать Laravel, что это поле даты и времени?

Файл журнала:

[2019-06-02 14:41:07] local.ERROR: Trailing data {"userId":8,"exception":"[object] (InvalidArgumentException(code: 0): Trailing data atCarbon\\Traits\\Creator.php:537)
[stacktrace]
esbot\\carbon\\src\\Carbon\\Traits\\Creator.php(559): Carbon\\Carbon::rawCreateFromFormat('Y-m-d H:i:s', '2019-06-07 00:0...', NULL)

Я пробовал это:

const UPDATED_AT = "AT_lastupdateuser";

protected $casts = [
    'AT_lastupdateuser' => 'datetime',
];

1 Ответ

2 голосов
/ 02 июня 2019

Вы можете привести атрибут к вашей модели, добавив определенный ключ / значение в массив $cast вашей модели. Подробнее смотрите здесь: https://laravel.com/docs/5.8/eloquent-mutators#attribute-casting

В вашем случае вы должны добавить в вашу модель следующий массив:

protected $casts = [
    'updated_at' => 'datetime',
];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...