在 Laravel 5.2 中从 Postgresql 时间戳返回 JSON 失败

问题描述 投票:0回答:1

我正在使用 Laravel 5.2 开发一个应用程序,我需要从

JSON
数据库返回一些
Postgresql
响应,但我收到以下错误(我发布了第一行错误消息)

in Carbon.php line 425
 at Carbon::createFromFormat('Y-m-d H:i:s', '2016-06-07 10:06:23.701566') in      Model.php line 2958
 at Model->asDateTime('2016-06-07 10:06:23.701566') in Model.php line 2451
at Model->attributesToArray() in Model.php line 2428
at Model->toArray() in Collection.php line 1023
at Collection->Illuminate\Support\{closure}(object(Category))
at array_map(object(Closure), array(object(Category), object(Category))) in   Collection.php line 1024
at Collection->toArray() in JsonResponse.php line 48
at JsonResponse->setData(object(Collection)) in JsonResponse.php line 49

数据库中的记录有2个字段

created_at
updated_at
,都是
timestamp
类型 这是
dd()
函数返回并打印一行的内容

"id" => 1
    "name" => "category1"
    "description" => "category 1 decription "
    "created_at" => "2016-06-07 10:06:23.701566"
    "updated_at" => "2016-06-07 10:06:23.701566"
  ]

这是我在

Controller
`use App\Http\Requests; 中的函数 使用应用\类别;

    class CategoryController extends Controller
   {

   public function index()
   {
    $categories = Category::all();


    return response()->json($categories);

   }

请帮助我解决此问题,如何使其正常工作,并让我知道是否需要提供任何进一步的信息

php json postgresql laravel-5 eloquent
1个回答
1
投票

Carbon 似乎正在尝试使用以下方式格式化您的日期:

Carbon::createFromFormat('Y-m-d H:i:s', '2016-06-07 10:06:23.701566')

正确的格式应如下,其中包括微秒。

Carbon::createFromFormat('Y-m-d H:i:s.u', '2016-06-07 10:06:23.701566')

尝试将其放入您的类别模型文件中。

 protected $dateFormat = 'Y-m-d H:i:s.u';
© www.soinside.com 2019 - 2024. All rights reserved.