2015-05-31 2 views
0

iam receving this error, htmlentities() ожидает, что параметр 1 будет строкой, указанным объектом. Как его решить? Мой контроллерhtmlentities() ожидает, что параметр 1 будет строкой, объект задан laravel5

public function category() 
    { 
     $recordsByCategories=\DB::table('products') 
       ->select('categories', \DB::raw('count(*) as total')) 
       ->groupBy('categories') 
       ->get(); 


    //dd($recordsByCategories); 
    return view('dashboard.show',compact('recordsByCategories')); 

    } 

мой взгляд

@foreach($recordsByCategories as $recordsByCategory) 
{!!$recordsByCategory->$categories!!} 
@endforeach 
+0

Можете ли вы опубликовать вывод dd - структура данных, возвращаемая get(), не является массивом строк. –

ответ

0

$recordsByCategory является объектом, а не строка, поэтому {{$recordsByCategory}} не имеет никакого смысла. Вы хотите отображать свойства записи, а не всю запись.

1

попробовать это в виду

использование {{$recordsByCategory->categories}} вместо {{$recordsByCategory}}

Это происходит потому, что $recordsByCategory является объектом

Одна другая проблема здесь есть, когда вы используете count(*) в этом запросе, то он будет возвращать только одна строка в результате.