From 747f10b523ab804b3e8c8b01c3ccdd3b7537e6ca Mon Sep 17 00:00:00 2001 From: Javier Eguiluz Date: Mon, 19 Oct 2015 16:03:27 +0200 Subject: [PATCH 1/2] Reworded the explanation about flash messages --- book/controller.rst | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/book/controller.rst b/book/controller.rst index 1d15b914d7b..005569585ca 100644 --- a/book/controller.rst +++ b/book/controller.rst @@ -604,12 +604,13 @@ session. Flash Messages ~~~~~~~~~~~~~~ -You can also store small messages that will be stored on the user's session. -This is useful when processing a form: -you want to redirect and have a special message shown on the *next* page. -These types of messages are called "flash" messages. +You can also store special messages, called "flash" messages, on the user's +session. By design, flash messages are meant to be processed exactly once. This +means that they vanish from the session automatically as soon as they are +retrieved. This feature makes "flash" messages particularly suited for storing +user notifications. -For example, imagine you're processing a form submit:: +Consider the following form processing example:: use Symfony\Component\HttpFoundation\Request; @@ -633,12 +634,12 @@ For example, imagine you're processing a form submit:: return $this->render(...); } -After processing the request, the controller sets a ``notice`` flash message -in the session and then redirects. The name (``notice``) isn't significant - -it's just something you invent and reference next. +After processing the request, the controller sets a flash message in the session +and then redirects. The message key (``notice`` in this example) can be freely +chosen and is used to retrieve the message content. In the template of the next page (or even better, in your base layout template), -the following code will render the ``notice`` message: +the following code will render the messages stored under the ``notice`` key: .. configuration-block:: @@ -660,9 +661,9 @@ the following code will render the ``notice`` message: .. note:: - By design, flash messages are meant to be processed exactly once. This means - that they vanish from the session automatically when they are retrieved from - the flash bag by calling the ``get()`` method. + It's common to use ``notice``, ``warning`` and ``error` as the keys of the + different types of flash messages, but you can use any key that fits your + needs. .. tip:: From e38b0377699b9fbc2a734ff6e1171a90457b2407 Mon Sep 17 00:00:00 2001 From: Javier Eguiluz Date: Tue, 20 Oct 2015 08:25:55 +0200 Subject: [PATCH 2/2] Fixed a RST syntax issue --- book/controller.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/book/controller.rst b/book/controller.rst index 005569585ca..4f634c9710d 100644 --- a/book/controller.rst +++ b/book/controller.rst @@ -661,7 +661,7 @@ the following code will render the messages stored under the ``notice`` key: .. note:: - It's common to use ``notice``, ``warning`` and ``error` as the keys of the + It's common to use ``notice``, ``warning`` and ``error`` as the keys of the different types of flash messages, but you can use any key that fits your needs.