2 回答

TA貢獻1779條經驗 獲得超6個贊
當您點擊“第 2 頁”時,您不會發送“年”和“月”數據。
解決方案 1 -bills
從控制器注入表單數據
我認為,最簡單的方法是將 發送$request->query->get('bills')
到樹枝,formData
例如。在你的樹枝上添加'bills' : formData
你的路線參數bills_paginated
如果你這樣做,symfony 將在你的 url 中添加你的表單數據,并且當你更改頁面時你不會丟失它們,所以當你這樣做時你就有了你的$getArgs= $request->query->get('bills');
數據
解決方案 2 -bills
從樹枝獲取表單數據
這是最簡單的解決方案,直接在樹枝中獲取賬單表單數據,如下所示{% set formData = app.request.get('bills') %}
:在你的樹枝上添加'bills' : formData
你的路線參數bills_paginated
最佳解決方案
IMO 最好和最干凈的解決方案是像這樣有一條包含年份和月份的路線"/bills/year/{year<[1-9]\d*>}/month/{month<[1-9]\d*>}/page/{page<[1-9]\d*>}"

TA貢獻1906條經驗 獲得超10個贊
我自己弄明白了,謝謝大家。所以如果有人遇到和我一樣的問題,我就是這樣解決的:
在 twig 顯示搜索結果的頁面內,在 pagerfanta 分頁功能的底部,我添加了一個routeParams.
{%
set params = app.request.get('bills')
%}
{% if Bills.haveToPaginate %}
<div class="card-footer pagination">
{{
pagerfanta(Bills, 'twitter_bootstrap4_translated',
{
routeName: 'bills_paginated',
routeParams:{bills:params}
})
}}
</div>
{% endif %}
現在每次我點擊一個特定的頁面時都params保持不變。
我希望代碼足夠清晰并有所幫助。
- 2 回答
- 0 關注
- 157 瀏覽
添加回答
舉報