Дайте InvalidArgumentException «Конечные данные» для углеродного формата даты в модели - PullRequest
0 голосов
/ 28 марта 2019

В Laravel с БД в Postgres.Таблица пользователей хранится с created_at и updated_at.Оба столбца имеют метку времени с часовым поясом в качестве своего типа данных.Поэтому при хранении данных по умолчанию postgres сохраняет временную метку по умолчанию с часовым поясом.Но когда я пытаюсь получить доступ к creat_at или конвертировать извлеченные данные в массив, используя ->toArray(), это даст

InvalidArgumentException {#312 ▼
  #message: "Trailing data"
  #code: 0
  #file: "/var/www/html/wallet-admin/vendor/nesbot/carbon/src/Carbon/Carbon.php"
  #line: 910
  trace: {▶}
}

Я уже пробовал с установкой формата даты в пользовательском модальном режиме

protected $dateFormat = 'Y-m-d H:i:s';

Но когда япытался обновить данные этой модели, затем он также выдает ошибку выше.


    protected $dateFormat = 'Y-m-d H:i:s';

    /**
     * The attributes that should be hidden for arrays.
     *
     * @var array
     */
    protected $hidden = [
        'password', 'remember_token',
    ];

    public function getDateFormat()
    {
        return 'U';
    }

    public function getCreatedAtAttribute($attr){

        return Carbon::parse($attr)->format('Y-m-d H:i:s');
    }
$user = User::select('*')->where('id',$id)->first();
//dd($user->toArray()); // This also give above error

$user->first_name = trim($request->first_name);
$user->last_name = trim($request->last_name);
$user->username = trim($request->username);
$user->email = trim($request->email);
$user->user_type = $request->user_type;
$user->status = isset($request->status)?1:0;

$user->save();

Данные не обновляются из-за вышеуказанного результата.Пожалуйста, помогите с этим.Спасибо

...