@@ -619,12 +619,12 @@ session.
619
619
Flash Messages
620
620
~~~~~~~~~~~~~~
621
621
622
- You can also store small messages that will be stored on the user's session.
623
- This is useful when processing a form:
624
- you want to redirect and have a special message shown on the * next * page.
625
- These types of messages are called "flash" messages .
622
+ You can also store special messages, called "flash" messages, on the user's
623
+ session. By design, flash messages are meant to be used exactly once: they vanish
624
+ from the session automatically as soon as you retrieve them. This feature makes
625
+ "flash" messages particularly great for storing user notifications .
626
626
627
- For example, imagine you're processing a form submit ::
627
+ For example, imagine you're processing a form submission ::
628
628
629
629
use Symfony\Component\HttpFoundation\Request;
630
630
@@ -650,20 +650,20 @@ For example, imagine you're processing a form submit::
650
650
return $this->render(...);
651
651
}
652
652
653
- After processing the request, the controller sets a `` notice `` flash message
654
- in the session and then redirects. The name (``notice ``) isn't significant -
655
- it's just something you invent and reference next .
653
+ After processing the request, the controller sets a flash message in the session
654
+ and then redirects. The message key (``notice `` in this example) can be anything:
655
+ you'll use this key to retrieve the message .
656
656
657
- In the template of the next action, the following code could be used to render
658
- the `` notice `` message :
657
+ In the template of the next page (or even better, in your base layout template),
658
+ read any flash messages from the session: :
659
659
660
660
.. configuration-block ::
661
661
662
662
.. code-block :: html+jinja
663
663
664
- {% for flashMessage in app.session.flashbag.get('notice') %}
664
+ {% for flash_message in app.session.flashbag.get('notice') %}
665
665
<div class="flash-notice">
666
- {{ flashMessage }}
666
+ {{ flash_message }}
667
667
</div>
668
668
{% endfor %}
669
669
@@ -677,9 +677,9 @@ the ``notice`` message:
677
677
678
678
.. note ::
679
679
680
- By design, flash messages are meant to be processed exactly once. This means
681
- that they vanish from the session automatically when they are retrieved from
682
- the flash bag by calling the `` get() `` method .
680
+ It's common to use `` notice ``, `` warning `` and `` error `` as the keys of the
681
+ different types of flash messages, but you can use any key that fits your
682
+ needs .
683
683
684
684
.. tip ::
685
685
0 commit comments