Я пытаюсь объединить данные в таблицу на cat_id
и преобразовать результат в JSON.Использование Laravel GroupBy
Структура таблицы
id name cat_id
1 A 2
2 B 1
3 C 2
4 D 2
5 E 3
6 F 2
7 G 1
Вот код, который я попытался
$posts = Posts::groupBy('cat_id')->get();
return $posts->toJson();
Результат должен выглядеть следующим образом:
[
{
"id": "1", //cat_id
"posts": [
{
"id": "2", //user id
"s": "B" //name
},
{
"id": "7",
"s": "G"
}
]
},
{
"id": "2", //cat id
"posts": [
{
"id": "1",
"name": "A"
},
{
"id": "3",
"name": "C"
},
{
"id": "4",
"s": "D"
},
{
"id": "6",
"s": "F"
}
]
}
]
Но я получаю Call to a member function toJson() on a non-object
. Где я поступаю неправильно?
вы получаете результат без toJson? –
@AnandPatel Я получаю результаты, но не так, как я ожидал. В запросе явно что-то не так. –