我用的是Laravel5.6。在我table下面
表:类别
+----+-----------+----------+
| 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 |
+----+----------+------------+----------+
表:岗位类别
+----+----------+--------------+
| 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张table。这里是 post_categories
表关系 posts
以及 categories
table。我想显示所有职位类别明智。下面是我的输出:
Cat1
Post1
Post2
Cat2
Post1
Post4
Cat3
Post1
Post2
Post3
网址:
http://chhayalsing.com/blog
http://chhayalsing.com/blog/category/people
n、 如果你要读我们的当地语言。你能换一下语言吗 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);
我知道我的密码错了。但我对这个框架完全陌生。我做不到。你能给我提供一个查询页面来获取邮件列表吗。
1条答案
按热度按时间thigvfpy1#
你可以很容易地查询得到所有的分类
$cats = Cat::all()
. 然后,使用循环获取每个类别的所有post$cat
把它推到你的孩子身上$cats
.最后,您将只有一个元素(可能是
$cats
) . 它看起来是这样的:$cat = { items: array:2[ 1 => { "id": "1", "name": "cat1:, "post": array:3 [ 1 => post1 detail, 2 => post2 detail, 3 => post3 detail ] }, 2 => { "id": "2", "name": "cat2:, "post": array:2 [ 1 => post1 detail, 2 => post2 detail, ] } }
然后,在blade中,只使用$cats可以帮助您传递有关ifself的$cat和$post的所有数据。