Задать вопрос
@cubaPro

Запись даты формата datetime-local в бд?

Здравствуйте. Необходимо записать дату в базу определенного формата.
Имеется текстовое поле
<input name="date_start" value="{{ isset($editEvent) ? $editEvent->date_start->format('Y-m-d\TH:i') : '' }}" type="datetime-local" class="form-control" required>

В модели Event указано:
protected $dates = ['date_start'];
И контроллер обновляет запись в бд.
$editEvent = $eventModel::find($id);
$editEvent->update($request->all());

Но при обновлении данных возникает ошибка
InvalidArgumentException in Carbon.php line 425:
Unexpected data found.
Data missing

После чего я добавил в модель следующее:
protected $dateFormat = 'Y-m-d\TH:i';
после этого обновление поля date_start проходило успешно, однако вывод этого поля в шаблоне вызывал ошибку.
ErrorException in Carbon.php line 425:
Unexpected data found.
Trailing data


Нужно записать в базу данные из поля datetime-local в базу. Как решить это, или что почитать? Буду очень признателен за помощь
  • Вопрос задан
  • 794 просмотра
Подписаться 1 Оценить Комментировать
Решения вопроса 1
$dateFormat из класса удалить. В модель добавить
public function setDateStartAttribute($value)
   {
       $this->attributes['date_start'] = Carbon::createFromFormat('Y-m-d\TH:i', $value);
   }
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы