我使用的Symfony 2.3.1(這個問題也存在於2.2)與session.handler.pdo,但是當我添加Flash袋消息,像這樣:與Flashbag
$this->get('session')->getFlashBag()->add(
'success', "Your message has been sent."
);
return $this->redirect($this->generateUrl('home'));
它不顯示在重定向後的主頁上,直到我按刷新,然後顯示出來。所以它需要顯示2個請求。如果我將會話存儲更改回原生,則此問題已消失。任何想法爲什麼發生這種情況?
我用下面的打印信息的枝條
{% for flashMessage in app.session.flashbag.get('success') %}
{{flashMessage}}
{% endfor %}
,我的服務是一樣的文檔如下:
services:
pdo:
class: PDO
arguments:
dsn: "mysql:dbname=%database_name%"
user: %database_user%
password: %database_password%
calls:
- [setAttribute, [3, 2]] # \PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION
session.handler.pdo:
class: Symfony\Component\HttpFoundation\Session\Storage\Handler\PdoSessionHandler
arguments: ["@pdo", %pdo.db_options%]