Создайте строку запроса добавления пути в Symfony2
Есть ли какое-либо средство для создания пути для данного маршрута и аргументов, автоматически добавляя строку запроса? В качестве временного обходного пути я использую макрос, созданный самостоятельно:
{% 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 %}
Есть ли какая-то нативная функция в Symfony2/Twig для этого?
Ответы
Ответ 1
Хорошей вещью с расширением Twig пути является то, что неизвестные параметры, переданные через массив args, автоматически добавляются в конце URL как параметры GET:
{{ path('route_id', {'routeParam':'foo', 'unknownParam':'bar'}) }}
будет производить
/Путь/к/путь/Foo? UnknownParam = бар
Ответ 2
{{ path('name_of the_page', {'id': asdfasd.pk_id}) }}