Я использую Laravel 5.6. Ниже моего стола
Таблица: категории
+----+-----------+----------+
| id | name | slug |
+----+-----------+----------+
| 1 | Cat1 | cat1 |
| 2 | Cat2 | cat2 |
| 3 | Cat3 | cat3 |
+----+-----------+----------+
Таблица: сообщения
+----+----------+------------+----------+
| id | user_id | name | photo |
+----+----------+------------+----------+
| 1 | 1 | Post1 | img1.jpg |
| 2 | 2 | Post2 | img2.jpg |
| 3 | 1 | Post3 | img3.jpg |
| 4 | 1 | Post4 | img4.jpg |
+----+----------+------------+----------+
Таблица: post_categories
+----+----------+--------------+
| id | post_id | category_id |
+----+----------+--------------+
| 1 | 1 | 1 |
| 2 | 1 | 2 |
| 3 | 1 | 3 |
| 4 | 2 | 1 |
| 5 | 2 | 3 |
| 6 | 3 | 3 |
| 7 | 4 | 2 |
+----+----------+--------------+
Выше я разместил свои 3 таблицы. Вот post_categories
табличное отношение с posts
и categories
таблицей. Я хочу показать все категории сообщений мудро. Ниже вижу мой вывод выглядит так:
Cat1
Post1
Post2
Cat2
Post1
Post4
Cat3
Post1
Post2
Post3
URL-адреса:
http://chhayalsing.com/blog
http://chhayalsing.com/blog/category/people
N.B: Если вы собираетесь читать наш местный язык. Не могли бы вы изменить язык Odia
на English
(в разделе нижнего колонтитула имеется опция Изменить язык)
People
категория, имеющая 8 постов. Но здесь показывается все. Я понятия не имею об этом запросе. Я попробовал:
$posts = Post::with([
'user' => function($query) {
$query->select(['id', 'username']);
},
'comments',
'post_category' => function($query) {
$query->select(['id', 'name']);
}
])->where('status', '=', 1)
->orderBy('id', 'DESC')->paginate($perPage);
Я знаю, что мой код был неправильным. Но я совершенно новичок в этой области. Невозможно сделать это. Не могли бы вы предоставить мне запрос с нумерацией страниц для получения списка сообщений.