Path Twig Странное преобразование строки Symfony 2.3
У меня есть эта переменная
{% set slug_profilo_segnalato = '{slug_profilo_segnalato}' %}
(Я назначаю {slug_profilo_segnalato} через sugar.js с назначением. ( http://sugarjs.com/api/String/assign), если я делаю {{slug_profilo_segnalato}}, я вижу правильно (pe william)
<a href='{{ path('profilo', {'slug': slug_profilo_segnalato }) }}'
когда я смотрю на ссылку, я сгенерировал этот результат
.../profilo/%7Bslug_profilo_segnalato%7D
Чтобы решить эту проблему, я сделал следующее:
<a href='{{ path('profilo', {'slug': slug_profilo_segnalato })|replace({'%7B':'{', '%7D':'}'}) }}'>PROFILO</a>
Результаты на Twig:
../profilo/william
Я не думаю, что это лучшее решение. я пытаюсь также | сырой, без пробелов.. Почему кодируется таким образом?
2 ответа
%7B и%7D означает, что у вас есть значение с фигурными скобками наподобие этой "{thing_here}", что означает, что sugarjs не удаляет фигурные скобки или путь метода ветки запускается до sugarjs
Вы пробовали комбинировать autoescape
блок и raw
фильтр?
{% autoescape false %}
<a href='{{ path('profilo', {'slug': slug_profilo_segnalato|raw }) }}'
{% endautoescape %}
Надеюсь это поможет...