Symfony 2.0에서 2.3으로 업그레이드하는 중입니다. 단일 페이지 앱이 있으므로 해시가 정의 된 경로가 있습니다.Symfony 2.1+는 해쉬/파운드 "#"를 인코딩합니다.
주석을 통해 구성된 경로 :
/**
* @Route("/app#orders/{id}", name="app_order")
*/
우리는 나뭇 가지 템플릿 내에서이 노선을 이메일을 생성하고 사용하는 나뭇 가지를 사용 업그레이드하기 전에
<a href="{{ url('app_order', { 'id': '123' }) }}">View order</a>
이 괜찮 았는데. 업그레이드 후 #
은 %23
으로 인코딩되지만 슬래시는 그대로 유지됩니다. 물론 이메일에 잘못된 URL이 생성됩니다.
해시 만 인코딩하고 슬래시가 아닌 이유는 무엇입니까? 그것은 전부 또는 무방해야합니다. 문자열 바꾸기 이외의 다른 옵션은 무엇입니까?
상황이 이미 도움이되지 않는 일을 시도했다 : 함께 원료 및 autoescape = false를 사용하여 원시 {{ url(...)|raw }}
- 거짓
{% autoescape false %}
- 에 autoescape 설정
좋은 찾기. Twig에 대한 관심이 적고 Symfony에 대한 관심이 높아진 것 같습니다. – anushr
당신이 사용하고있는 버전이 혼란 스럽습니다. 이 커밋은 symfony의 첫 번째 릴리스 (v2.0.0)에 이미 포함되어 있습니다. –
우리는 2.0.21에 있으며 해시는 확실히 인코딩되지 않습니다. – anushr