在Symfony 2.7应用程序中,使用Twig,我想创建生成分页按钮。使用额外的GET参数重新生成当前网址
我有一个搜索页面,带有可选的GET参数:
空:
WWW [...] COM /搜索
按名称搜索:
www。[...] com/search ?name = john
按名称和排序按相关搜索:。。?
WWW [...] COM /搜索名称=约翰&排序=相关
搜索按名称和排序按相关性,第2页:?
WWW [...] COM /搜索名称=约翰&排序=相关& p = 2
超过10个可能的参数,所以我不想用所有可选参数定义一个路径模式。
然后,当我显示搜索结果,我想下一个页面链接:。。?
WWW [...] COM /搜索名称=约翰&排序=相关& P = 2
WWW。[...]。com /搜索?名称=约翰&排序=相关& p = 3
WWW。[...]。com /搜索?名称=约翰&排序=相关性& P = 4
在TWIG模板我尝试了这样:
{% set param = app.request.get('_route_params') %}
{% if param is null %}
{% set param = {'p': page} %}
{% else %}
{% set param = param|merge({'p': page}) %}
{% endif %}
<a href="{{ path(request.get('_route'), param) }}">{{ page }}</a>
但是,由于可选参数没有在路由中定义,它们不是在request.GET中( '_ route_params' )和建立的链接只定义为?p = X。
是否有任何其他方式来获取查询GET参数,并编辑它们与其他p创建一个新的url?
你在布线路径有哪些?类似于/ search/{name}/{sort}/{p}' – scoolnico
因为我想隐藏所有空白搜索字词以拥有漂亮的小网址。 – Alsatian