如何使用Laravel连接到路径的末尾?

时间:2015-02-01 04:23:43

标签: php laravel routes blade

我正在使用Laravel创建一个项目。

有没有办法在{{ route('routename') }}代码中使用<a>连接到网址的末尾?

我创建了一个缩略图列表,使用foreach循环链接到全尺寸图像集合。

@foreach ($images as $image)
    <a href="{{ route('images') }}"> // link to full size image collection
        <img src="{{ $image->url }}">// thumbnail image
    </a>
@endforeach

{{ route('image') }}是指向每页仅包含一个图片的分页页面的链接。

因此第一张图片的网址为my.site/images?page=1,第二张图片的网址为my.site/images?page=2,依此类推。

我想根据用户点击的缩略图将用户路由到正确的page=#,这样每次点击缩略图链接时,他们就不必从全尺寸图像的开头开始

我想我可以使用foreach循环将变量递增1并在每个href的末尾连接它以获得正确的页码但我不确定如何使用Laravel执行此操作?

我希望我生成的html看起来像这样

<a href="my.site/images?page=1"><img src="thumbnail1.jpg"></a>
<a href="my.site/images?page=2"><img src="thumbnail2.jpg"></a>
<a href="my.site/images?page=3"><img src="thumbnail3.jpg"></a>
<a href="my.site/images?page=4"><img src="thumbnail4.jpg"></a>
<a href="my.site/images?page=5"><img src="thumbnail5.jpg"></a>
...

有人知道吗?

2 个答案:

答案 0 :(得分:2)

你发现自己的方法非常好,但有一个更优雅的方法。作为第二个参数传递的所有参数都没有实际的路由参数(如{page})将作为查询字符串附加。

{{ route('images', ['page' => $n]) }}

答案 1 :(得分:0)

我能够通过使用此代码

来完成这项工作
<?php $n = 1; ?>
@foreach ($images as $image)
    <a href="{{ route('images') . '?page=' . $n }}"> // link to full size image collection
        <img src="{{ $image->url }}">// thumbnail image
    </a>
    <?php $n++; ?>
@endforeach