1
我已在security.yml註銷成功處理程序:Symfony使用LogoutSuccessHandler添加閃光燈消息不起作用
security:
firewalls:
secured_area:
logout:
invalidate_session: true
success_handler: acme.security.logout_success_handler
我在services.yml設置服務:
acme.security.logout_success_handler:
class: ACME\FooBundle\Security\Handler\LogoutSuccessHandler
和落實在LogoutSuccessHandler代碼.PHP
class LogoutSuccessHandler implements LogoutSuccessHandlerInterface
{
public function onLogoutSuccess(Request $request)
{
$request->getSession()->getFlashBag()->add('info', 'you have been logged out successfully');
return new RedirectResponse('/');
}
}
現在,如果我有任何提示信息,我從樹枝打印:
{% for flashType, flashMessages in app.session.flashbag.all() %}
{% for flashMessage in flashMessages %}
<div class="flash-message-{{ flashType }}">{{ flashMessage|raw }}</div>
{% endfor %}
{% endfor %}
但沒有消息打印。我認爲在註銷成功處理程序被調用並且Flash消息丟失後,會話被重新生成。