javascript — 2 средства выбора даты в Laravel 5, но сохраняется только последнее значение

Как видно из названия, у меня есть 2 datepickers на той же странице. Когда я заполняю их оба, последнее значение сохраняется в первой переменной, а последняя переменная устанавливается в базе данных 0000: 00: 00 00:00:00.

Посмотреть

<!-- First picker -->
<input class="form-control datetimepicker" required="required" name="start_date" type="text" id="start_date">
<!-- Second picker -->
<input class="form-control datetimepicker" required="required" name="close_date" type="text" id="close_date">

<script type="text/javascript">
$(function () {
$('.datetimepicker').datetimepicker({
locale: 'nl',
sideBySide: true
});
});
</script>

контроллер

public function store(Request $request)
{
$this->validate($request, [
'start_date' => 'required|date_format:d-m-Y H:i|after:tomorrow',
'close_date' => 'required|date_format:d-m-Y H:i|after:start_date',
]);

Election::create($request->all());
}

модель

protected $dates = [
'start_date',
'close_date'
];

public function setStartDateAttribute($date)
{
$this->attributes['start_date'] = Carbon::createFromFormat('d-m-Y H:i', $date, 'Europe/Amsterdam')->toDateTimeString();
}

public function setCloseDateAttribute($date)
{
$this->attributes['start_date'] = Carbon::createFromFormat('d-m-Y H:i', $date, 'Europe/Amsterdam')->toDateTimeString();
}

По сути, ценность, которую я вкладываю в close_date в представлении, сохраняется в start_date базы данных и close_date установлено в ноль.

Есть идеи, как сохранить оба значения в нужном месте?

0

Решение

Измени свой setCloseDateAttribute функция:

public function setCloseDateAttribute($date)
{
$this->attributes['close_date'] = Carbon::createFromFormat('d-m-Y H:i', $date, 'Europe/Amsterdam')->toDateTimeString();
}

В настоящее время он также пишет $this->attributes['start_date']

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]