在 KnpPaginatorBundle 中使用多个模板
Use multiple templates with KnpPaginatorBundle
我使用 KnpPaginatorBundle 在我的网站后台管理分页并且效果很好
我将其配置为使用自定义模板
knp_paginator:
template:
pagination: MyappMainBundle::pagination.html.twig
然后,我想在前台使用相同的包,但具有不同的 html 结构。
所以,我的问题是:是否可以有两个分页模板?一台用于后台,一台用于前台。
预先感谢您的回答。
您可以在控制器中自定义分页模板:
$paginator = $this->get('knp_paginator');
$pagination = $paginator->paginate($target, $page);
$pagination->setTemplate('MyBundle:Pagination:pagination.html.twig');
$pagination->setSortableTemplate('MyBundle:Pagination:sortable.html.twig');
在视图中:
{% do pagination.setTemplate('MyBundle:Pagination:pagination.html.twig') %}
或(更好)在渲染方法中:
{{ knp_pagination_render(pagination, 'MyBundle:Pagination:pagination.html.twig') }}
我使用 KnpPaginatorBundle 在我的网站后台管理分页并且效果很好
我将其配置为使用自定义模板
knp_paginator:
template:
pagination: MyappMainBundle::pagination.html.twig
然后,我想在前台使用相同的包,但具有不同的 html 结构。 所以,我的问题是:是否可以有两个分页模板?一台用于后台,一台用于前台。
预先感谢您的回答。
您可以在控制器中自定义分页模板:
$paginator = $this->get('knp_paginator');
$pagination = $paginator->paginate($target, $page);
$pagination->setTemplate('MyBundle:Pagination:pagination.html.twig');
$pagination->setSortableTemplate('MyBundle:Pagination:sortable.html.twig');
在视图中:
{% do pagination.setTemplate('MyBundle:Pagination:pagination.html.twig') %}
或(更好)在渲染方法中:
{{ knp_pagination_render(pagination, 'MyBundle:Pagination:pagination.html.twig') }}