Laravel 5 |设置 ID 字段的分页问题

Posted

技术标签:

【中文标题】Laravel 5 |设置 ID 字段的分页问题【英文标题】:Laravel 5 | Pagination Issue on setting ID field 【发布时间】:2016-06-06 06:00:49 【问题描述】:

我使用 laravel "paginate()" 函数来创建分页。

我将记录表的Id字段设置为“$i++”。

但每一页都以 1、2、3... 开头。

如何将 ID 设置为上一页的继续。

其实我的item table id不正确,所以我用"$i++"来创建Id。

我的控制器:

 public function show()
   
    $items = \Auth::user()->Items()->paginate(5);
    return view('cart.admin.show',compact('items'));
   

我的观点:

  <div class="pagination pagination-centered">
        !! $items->render() !!
  </div>

这个问题的解决方案是什么...?

【问题讨论】:

添加你的完整代码,因为我无法理解你的问题,+你能清理你的数据库吗? 我设置了 paginate(5),所以我在每页中得到 5 个项目,在第一页我得到项目 id 为 1,2,3,4,5.... 在第二页我也获取项目 ID 为 1,2,3,4,5 .... Buz 我没有使用项目 ID,我使用手动创建的 ID...所以它在每个页面上都刷新了....以及创建连续编号作为 ID 的可能性...? 【参考方案1】:

在刀片页面,在 foreach 循环之前使用它:

$sn_count = (isset($_GET['page']) && $_GET['page'] > 1) ? (($_GET['page']-1) * 5)+1 : 1;

【讨论】:

【参考方案2】:

为此,您可以在 App/Http/Helpers/helper.php 中创建 helper 函数

function serial_number_pagination($current_page, $per_page, $i)
    return (($current_page * $per_page) + $i)-5;

并调用刀片文件中的辅助函数,例如(代替替换 $i 值),

<td> serial_number_pagination($items->currentPage(), $items->perPage(), $i) </td>

【讨论】:

以上是关于Laravel 5 |设置 ID 字段的分页问题的主要内容,如果未能解决你的问题,请参考以下文章

php laravel 5的分页模板

laravel 5.5 中未设置分页样式

如何在 laravel 的分页集合中使用变换

laravel 轻松实现分页功能

Laravel AJAX和没有url的分页

[ Laravel 5.5 文档 ] 数据库操作 —— 在 Laravel 中轻松实现分页功能