Недавно я реализовал файл bootstrap-datetimepicker.js, основанный на moment.js для некоторых визуальных эффектов. До виджета datetime у меня просто было поле ввода с датой&время.
Сейчас я сталкиваюсь с некоторыми проблемами, между Carbon и Monents.js существует своего рода конфликт с форматом datetime.
Это мое поле ввода:
<div class="form-group">
<div class="col-sm-4">
{!! Form::label('published_at', 'Veröffentlichungsdatum') !!}
</div>
<div class="col-sm-8">
{!! Form::input('datetime','published_at', null, ['class' => 'form-control datetimepicker']) !!}
</div>
</div>
Когда я сохраняю artcile, выдается это исключение:
"InvalidArgumentException in Carbon.php line 425:
Unexpected data found.
Unexpected data found.
Unexpected data found.
Trailing data"
Без использования BS datetimepicker мой datetime выглядит так:
2016-10-07 16:32
Я использую это в моей модели для правильного форматирования:
public function setPublishedAtAttribute($date) {
$this->attributes['published_at'] = Carbon::createFromFormat('Y-m-d H:i', $date);
}
Тем не менее, с помощью datetimepicker BS мое datetime выглядит так:
25.10.2016 21:35
Я понятия не имею, как решить эту проблему.
Я всегда делал это так, надеюсь, это поможет:
/**
* Define how the date attribute gets saved to the database
* @param $date
*/
public function setPublishedAtAttribute($date)
{
$this->attributes['start_date'] = Carbon::createFromFormat('Y-m-d H:i', $date)->toDateTimeString();
}
Обратите внимание ->toDateTimeString()
Других решений пока нет …