Laravel - POST 日期为 JSON 并保存为 MySQL 中的日期约束

Laravel - POST date as JSON and save as DATE Constraint in MySQL

问题陈述:

我在 MySQL 列数据类型约束数据库中定义了 DATE 格式。

但是,在 JSON object ISO format where it must be DATE DataType in MySQL Constraint using Laravel Mass Assignment and all input data

中发送日期
SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect date value: '1990-01-01T00:00:00.000Z' for column 'date_of_birth' at row 1


文件和配置:

Blade 文件

<input type="date" id="date_of_birth">

<script> 
    var dob = new Date( $("#date_of_birth").val() ).toISOString();
</script>

Post JSON object

{
    date_of_birth: "1990-01-01T00:00:00.000Z"
}

批量分配的设置属性

App\Models\User.php

protected $fillable = [ 'date_of_birth' ]

App\Http\Controllers\UpdateController.php

    public function update(Request $request, User $user)
    {

        $id = $user->updateOrCreate($request->all());

我要给分@Armagen. Using mutator

use Carbon\Carbon;

class User extends Model
{
    /**
     * Set the user's date_of_birth.
     *
     * @param  string  $value
     * @return void
     */
    public function setDateOfBirthAttribute($value)
    {
        $this->attributes['date_of_birth'] = Carbon::parse($value);
    }
}