web-dev-qa-db-fra.com

Générer un chemin en ajoutant une chaîne de requête dans Symfony2

Existe-t-il une possibilité de générer un chemin pour une route et des arguments donnés, en ajoutant automatiquement la chaîne de requête? Comme solution de contournement temporaire, j'utilise une macro auto-réalisée:

{% macro path(route, args, with_query) %}
{% spaceless %}
    {% set with_query = with_query|default(false) and app.request.queryString %}
    {{ path(route, args) ~ (with_query ? '?' ~ app.request.queryString : '' ) }}
{% endspaceless %}
{% endmacro %}

Existe-t-il une fonction native dans Symfony2/Twig pour le faire?

28
gremo

Une bonne chose avec chemin Twig est que les paramètres inconnus passés via le tableau args sont automatiquement ajoutés à la fin de l'URL en tant que paramètres GET:

{{ path('route_id', {'routeParam':'foo', 'unknownParam':'bar'}) }}

produira

/ chemin/vers/route/foo? unknownParam = bar

85
AlterPHP