Symfony News

New in Symfony 5.3: Twig Serialize Filter

Jesse Rushlow

Contributed by
Jesse Rushlow
in #40323.

In Symfony applications there are several methods of passing data from the backend to the frontend. Some applications make Ajax requests whenever they need data and others prefer to pass it in Twig templates as HTML attributes or JavaScript variable values.

In Symfony 5.3 we’ve added a simpler way of doing this: the new serialize Twig filter. This filter accepts any data that can be serialized by the Serializer component and returns a serialized string in the specified format.

In the following example, the Twig template uses the stimulus_controller() function from the Symfony Stimulus Bridge. If the template is passed a variable called product, you can now serialize its contents to use it in the Stimulus function call:

1
2
3
{{ stimulus_controller('product-show', {
    product: product|serialize('json', { groups: 'product:read'})
}) }}

This would render something like this:

1
2
3
<div data-controller="product-show"
     data-product-show-product-value="{&quot;id&quot;:5,...}">
<div>

Sponsor the Symfony project.


About us

What a Symfony developer should know about the framework: News, Jobs, Tweets, Events, Videos,...

Resources

Find us on Twitter

Find us on Facebook