所以我刚开始使用Laravel Pagination,我正试图在页面上显示我的数据库的结果。在我的表中,我将结果链接到page_id,并将它们链接到主ID。因此,为了获得我需要的页面数量,我会检查与主ID链接的页面数量。
像这样:
$query = DB::table('table')->where('main','a value');
$paginate = $query->simplePaginate(1);
这会输出2页,这是正确的行为,因为我有2个page_id链接到主ID。
现在我尝试将结果显示在他们想要的页面上。我是这样做的:
$get = $query->get();
foreach($get as $something){
$array[]= DB::table('page_results')->where('page_id', $something->page_id)->get();
}
现在问题就在于此。在第一页上,它显示每个结果,即使它没有链接到第1页,但在第二页上显示它应该显示的结果。例如,我有2个结果链接到第一页,2个链接到第二页。第一页显示4个结果(两个页面的结果),第二个页面显示2个结果(正确的结果)。
我的视图中的分页与documentation中的分页相同,但具有不同的变量(文档代码):
<?php foreach ($users as $user): ?>
<?php echo $user->name; ?>
<?php endforeach; ?>
<?php echo $users->links(); ?>
我暂时没有显示结果,但在我的模型中的var_dump
var_dump($array);
我在这里做错了什么?我非常困惑。
答案 0 :(得分:0)
只需在存储库中使用laravel的paginate函数
返回$ this-&gt; makeModel() - &gt; paginate(10);
并在视图页面
使用渲染 {! $ articles-&gt; render()!!}添加分页