urlencode в функции ветки

У меня есть этот маршрут:

_view_tag:
    pattern:  /topic/{tid}
    defaults: {_controller: "MyCoreBundle:ViewTag:index" }

И я хочу показать URL, как это: example.com/topic/Web+development, я использую href="topic/{{ topicname|url_encode() }}", Это работает, но, конечно, это не правильно, поэтому я перехожу на href="{{ path('_view_tag', {'tid': topicname|url_encode() } ) }}", Но это не показывает example.com/topic/Web+development, это показывает example.com/topic/Web%2Bdevelopment,

Я также попробую это:

{% set _tid = topicname|url_encode() %}
<a href="{{ path('_view_tag', {'tid': _tid } ) }}" ...

Но все еще не работает

У меня вопрос, как заставить это показать example.com/topic/Web+development используя функцию пути ветки?

1 ответ

Решение

path Функция заботится о URL-кодировании для вас. Ваша проблема в том, что ваше пространство было закодировано дважды: сначала +, то что превратилось в %2b, Это будет работать:

path('_view_tag', { 'tid': topicname } )
Другие вопросы по тегам