Laravel 5组仅显示第一行

时间:2015-10-08 12:10:46

标签: php mysql laravel controller

我在控制器中有这个。

> $getNetworkImages = DB::table('network_images')->groupBy('network_album')->orderBy('id', 'desc')->get();

但是这只返回第一行,按每张专辑的id(desc)排序。我想要这张专辑中的所有图像,而不仅仅是第一行。

我的口才是:

> @foreach($network_images as $album)
>   <div>
>       <a style="font-weight: 400;">{{ $album->network_author }}</a> създаде нов албум <a>{{ $album->network_album }}</a> преди <time
> class="timeago" datetime="{{ $album->network_created }}">{{ $album->network_created }}</time>.
>       <br />
>       {{ $album->network_text }}
>       <br />
>       <br />
>       {{ $album->network_images }}
>   </div>
>   <br />
> @endforeach

我无法理解我的错误在哪里。

id | network_image | network_album
--------------------------------------------
1  |         123           |             1
2  |         456           |             1
3  |         789           |             2
4  |         101           |             2

输出:

* Network_album 1 包含network_image 123

Network_album 1 包含network_image 456

Network_album 2 包含network_image 789

Network_album 2 包含network_image 101 。*

我想:

* Network_album 1 包含network_image(s) 123 456

Network_album 2 包含network_image(s) 789 101 。*

1 个答案:

答案 0 :(得分:1)

Groupby()将结果集分组为一列或多列。

如果您只看到一行,则表示所有图片属于同一个network_album。

如果您希望查看属于某个特定相册的所有图像,请使用where()以使用相册ID获取结果。