我在 symfony 上使用 knp_paginator 来列出信息。我列出的信息会生成很多页面。问题是当我过滤我的结果时。
假设我在第 3 页,生成的链接是https://something.com/blabla?page=3
,但由于我的过滤器没有生成 3 页,所以我得到 0 个结果。如果我更改 URL 上的页面,我可以看到过滤后的结果。当我使用控制器应用过滤器时,如何使页面参数消失?
我在 symfony 上使用 knp_paginator 来列出信息。我列出的信息会生成很多页面。问题是当我过滤我的结果时。
假设我在第 3 页,生成的链接是https://something.com/blabla?page=3
,但由于我的过滤器没有生成 3 页,所以我得到 0 个结果。如果我更改 URL 上的页面,我可以看到过滤后的结果。当我使用控制器应用过滤器时,如何使页面参数消失?
我认为您的问题的答案显示在官方文档的示例中:
$paginator = $this->get('knp_paginator');
$pagination = $paginator->paginate(
$query, /* query NOT result */
$request->query->getInt('page', 1)/*page number*/,
10/*limit per page*/
);
// parameters to template
return $this->render('AcmeMainBundle:Article:list.html.twig', array('pagination' => $pagination));
在此示例中,默认参数将是第一页,每页最多 10 个。如果计数记录少于 10 条,它将显示 1 页有 7 条记录。