簡體   English   中英

如何將參數附加到 KNP 分頁器 url

[英]How To append parameters to KNP paginator url

我正在使用 KNP Paginator 包進行分頁。 有誰知道如何將參數附加到生成的 url 中?

這是我的設置:

 {{ knp_pagination_sortable(supplierProducts, 'Product Sku', 'p.name') }}

我想將 &section=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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM