Skip to content

How to Generate Routing URLs in JavaScript

Warning: You are browsing the documentation for Symfony 3.x, which is no longer maintained.

Read the updated version of this page for Symfony 7.1 (the current stable version).

If you're in a Twig template, you can use the same path() function to set JavaScript variables. The escape() function helps escape any non-JavaScript-safe values:

1
2
3
<script>
    let route = "{{ path('blog_show', {'slug': 'my-blog-post'})|escape('js') }}";
</script>

But if you actually need to generate routes in pure JavaScript, consider using the FOSJsRoutingBundle. It makes the following possible:

1
2
3
4
5
<script>
    let url = Routing.generate('blog_show', {
        'slug': 'my-blog-post'
    });
</script>
This work, including the code samples, is licensed under a Creative Commons BY-SA 3.0 license.
TOC
    Version