У меня есть отношение между двумя таблицами - Many To Many.
Я использую метод sync()
для сохранения связанных моделей:
public function tags()
{
return $this->belongsToMany('Tag')->withTimestamps();
}
И таким образом я могу установить поля timestamp - created_at
и updated_at
, но как я могу переопределить формат этих дат.
Я переопределил формат для моделей, используя следующее:
protected function getDateFormat()
{
return 'U';
}
Но, похоже, это не работает при использовании sync()
. Все записи в таблице сохраняются с использованием формата даты по умолчанию.
Используйте Carbon для управления этими данными. Сохраните его, как есть, но определите мутатор для модели. В ближайшее время → мутатор - это getter для конкретных данных, поступающих из базы данных (в активной записи → класс модели). Временные метки возвращаются как экземпляр Carbon, поэтому формат очень прост. Мутаторы делают это за кулисами. Может изменяться как даты, такие как свойства модели (шифрование, форматирование и т.д.). Laravel doc показывает, как это сделать.