[英]How To append parameters to KNP paginator url
我正在使用 KNP Paginator 包進行分頁。 有誰知道如何將參數附加到生成的 url 中?
這是我的設置:
{{ knp_pagination_sortable(supplierProducts, 'Product Sku', 'p.name') }}
我想將 §ion=supplier 添加到 URL 的末尾,我只是不知道該怎么做。 我瀏覽了文檔,但沒有找到任何信息。
如果可以的話請幫忙。
謝謝。
根據KnpPaginator 文檔,您可以按如下方式附加查詢參數:
$paginator = $this->get('knp_paginator');
...
$pagination->setParam('section', 'supplier');
您可以擴展 kn_pagination_sortable 模板。 當您在后台運行“knp_pagination_sortable”時,它基本上會根據您的規范生成 HTML。 但是,您可以擴展它。 您可以為該 pagination_sortable 編寫自己的模板,而不是為該元素使用包生成的 HTML。 這是我正在從事的項目的一個片段。 這是在我的 pagination_sortable.html.twig:
<a id="table_sorteable_{{ options['title']|lower }}" {% for attr, value in options %} {{ attr }}="{{ value }}"{% endfor %}>
{{ title }}
<b class="caret {{ options['class'] }}"></b>
</a>
得到它? 您可以擁有這樣的模板並根據您的需要進行更改。
您可以在下面的鏈接中找到更多信息。
截至 2020 年和 KnpPaginatorBundle v5.3,@likeitlikeit 提出的解決方案不起作用,因為setParam
方法不再存在。
但是您可以直接在 twig 的 knp 幫助器中將參數附加到排序和分頁鏈接:
{# 4th parameter for sortable helper #}
{{ knp_pagination_sortable(results, column.title, column.alias, {}, params) }}
{# 3rd parameter for pagination helper #}
{{ knp_pagination_render(results, '', params) }}
例如,如果要在排序和分頁鏈接中包含查詢參數,可以執行以下操作:
{# Sort - pass all query parameters except sort column and direction #}
{% set params=app.request.query.all | filter((v, k) => (k != 'direction' and k != 'sort'))%}
{% for column in ... %}
{{ knp_pagination_sortable(results, column.title, column.alias, {}, params) }}
{% endfor %}
{# Pagination #}
{{ knp_pagination_render(results, '', app.request.query.all) }}
要在 url 中添加參數,我是這樣進行的:在前面:
{{ knp_pagination_render(clients, ('annuaire/my_pagination.html.twig'), {"type": type ? type : '' ,"city": city ? city : ''}) }}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.