Я в отчаянии.Я пытаюсь отправить дату в Laravel с Angular и сохранить ее в базе данных MySQL.Тем не менее, я получаю только текущую дату.Я пришлю больше информации.Они прибывают правильно.Только на дату он выбирает «сейчас».В базе данных дата имеет тип DateTime.Форма объекта в Angular также имеет правильную дату и имеет тип Момент.
Я уже пробовал следующее.Я только что прошел дату (с _d).Конечно, я сдал весь объект.И мой нынешний подход состоит в том, чтобы передавать день, месяц и год по отдельности.
Я пробовал это в Laravel с DateTime, а теперь с Carbon безуспешно.
Вот мой код Laravel
public function postLend(Request $request)
{
$validator = Validator::make($request->all(), [
'itemid' => 'required|numeric',
'personid' => 'required|numeric',
'annotation' => 'required',
'startdate' => 'required|date',
'enddate' => 'required|date',
]);
if ($validator->fails()) {
return response()->json(['error'=>$validator->errors()], 401);
}
$lend = new Lend();
$lend->itemid = $request->input('itemid');
$lend->personid = $request->input('personid');
$lend->annotation = $request->input('annotation');
// $lend->startdate = $request->input('startdate');
// $lend->enddate = $request->input('enddate');
$startDOI = new \DateTime();
$lend->startdate = new Carbon($request->input('startyear'),$request->input('startmonth'),$request->input('startday'));
//var_dump($lend->startdate);
//$startimestamp = $lend->startdate->getTimestamp();
//var_dump($lend->enddate);
$lend->enddate = new Carbon($request->input('enddate'));
$lend->save();
return response()->json(['quote' => $lend], 201);
}
Вот мой угловой код
onChangeData(form: NgForm) {
console.log(this.datepicker._selected);
console.log(form.value.studentid);
this.lend.itemid = this.items.id;
this.lend.personid = form.value.studentid;
// this.lend.personid = form.value.studentid;
this.lend.annotation = form.value.annotation;
this.lend.startDate = form.value.startdate._d;
this.lend.startDay = form.value.startdate._i.date;
this.lend.startMonth = form.value.startdate._i.month;
this.lend.startYear = form.value.startdate._i.year;
this.lend.endDate = form.value.enddate._d;
console.log(this.lend);
this.lendService.addLend(this.lend);
}
У Laravel никогда не бывает ни начала, ни конца.