Возвращает временную метку Laravel [объект object] с помощью eloquent

#jquery #laravel #eloquent #datatables #timestamp

#jquery #laravel #eloquent #таблицы данных #временная метка

Вопрос:

Кто-нибудь может мне помочь, почему у меня есть [object object], использующий eloquent в таблицах данных.

Если я использовал DB::table('transaction') , данные временных меток отображались нормально (не как объект).

вот моя миграция

 $table->timestamps();
  

Модель

 <?php

namespace AppModels;

use IlluminateDatabaseEloquentModel;

class Transaksi extends Model
{
    //
    protected $table = 'transaction';
    protected $primaryKey = 'id_transaction';

    public $fillable =[
        'id_user',
        'id_ble',
        'rssi',
        'measured_power',
        ];
    
    
    public $timestamps = true;

    public function user(){
        return $this->belongsTo('AppModelsUser', 'id_user', 'id');
    }
    public function ble(){
        return $this->belongsTo('AppModelsBLE', 'id_ble', 'id_ble');
    }
}
  

Контроллер

     public function search_getList(){
        $id=Transaction::
            get()
            ->map(function($key){
                return [
                    'id_user'       => $key->id_user,
                    'name'          => $key->user->name,
                    'department'    => $key->user->id_dept,
                    'location'      => $key->ble->id_loc,
                    'rssi'          => $key->rssi,
                    'measured_power'=> $key->measured_power,
                    'updated_at'    => $key->updated_at
                ];
            });
            dd($id);
        return Datatables::of($id)->make(true);
    }
  

и вот результат, если я dd($id)

Текст

Пожалуйста, помогите мне найти первопричину, спасибо

Ответ №1:

отформатируйте это обновленное в

  'updated_at'    => $key->updated_at->format('jS F Y h:i:s A'),
  

или

 'updated_at'    => $key->updated_at->toDateTimeString();
  

Вы можете изменить этот формат по своему желанию