Мой пользователь вводит дату в следующем формате: "д / м / ГЧ: i", например "22/03/2020 11:00".
Моя проверка в порядке: 'exam_date' => 'required|date_format:d/m/Y H:i',
У меня есть база данных Postgres, столбец типа для даты: timestamp(0) without time zone
.
Так что, если я понял, мне нужно преобразовать дату, прежде чем вставить ее в таблицу. И я должен преобразовать его после прочтения, чтобы отобразить его в хорошем формате. Для этого у меня есть эти мутатор и метод доступа:
public function setExamDateAttribute($value): void
{
$this->attributes['exam_date'] = DateTime::createFromFormat('d/m/Y H:i', $value);
}
public function getExamDateAttribute($value)
{
return date_format( DateTime::createFromFormat('Y-m-d H:i', $value), 'd/m/Y H:i');
}
У меня есть эта ошибка:
date_format () ожидает, что параметр 1 будет DateTimeInterface, bool предоставлен
Другими словами, я не понимаю, как мутаторы и методы доступа работают с датами.