Карбоновый диффорхуман не работает на БД сырой

Этот работает нормально:

$news = NewsFeed::all();

возвращение:

{
"new": [
{
"id": "NF_gi042G0493C389rT1z09",
"user_id": "CUS_G530t786S1GVwlcJ3Nw1",
"newsfeedable_id": "STA_7F5eJ6587n2523750cZr",
"newsfeedable_type": "Status",
"created_at": "2015-03-31 06:01:03",
"updated_at": "2015-03-31 06:01:03"},
{
"id": "NF_0k625I8vp9sG22637a80",
"user_id": "CUS_G530t786S1GVwlcJ3Nw1",
"newsfeedable_id": "CNT_dF22v8dorG2k143N1288",
"newsfeedable_type": "Contact",
"created_at": "2015-03-30 10:04:34",
"updated_at": "2015-03-30 10:04:34"}
]
}

==============

Но это:

$news = DB::select( DB::raw(" SELECT * FROM `news_feed` ") );

примечание: MySQL запрос в порядке, работает отлично

Мой код:

$x = $news->updated_at->diffForHumans();
echo $x;

ОШИБКА:

Вызов функции-члена diffForHumans () для необъекта

Я сделал var_dump вот результат db raw:

{
"new": [
{
"id": "NF_gi042G0493C389rT1z09",
"user_id": "CUS_G530t786S1GVwlcJ3Nw1",
"newsfeedable_id": "STA_7F5eJ6587n2523750cZr",
"newsfeedable_type": "Status",
"created_at": "2015-03-31 06:01:03",
"updated_at": "2015-03-31 06:01:03"},
{
"id": "NF_0k625I8vp9sG22637a80",
"user_id": "CUS_G530t786S1GVwlcJ3Nw1",
"newsfeedable_id": "CNT_dF22v8dorG2k143N1288",
"newsfeedable_type": "Contact",
"created_at": "2015-03-30 10:04:34",
"updated_at": "2015-03-30 10:04:34"}
]
}

Результат Eloquent и DB raw var на 100% одинаков.

Почему diffForHumans () не работает на db raw?

1

Решение

если вы попытаетесь var_dump updated_at с помощью eloquent

var_dump ($ eloquent_news-> updated_at);

{
"date": "2015-03-31 06:01:03.000000",
"timezone_type": 3,
"timezone": "UTC"}

Это фактический результат рендеринга updated_at от eloquent, я не знаю, как это происходит в DB :: raw. Но, по крайней мере, теперь вы знаете, что происходит.

Нижняя линия:

Eloquent updated_at и DB :: raw не совпадают на 100%.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]