Symfony:在控制器中使用闪存包时输入错误

In order to get the flash bag of the session and add a flash message, in the controller I call:

$request->getSession()->getFlashBag()->addFlash(...);

(where $request is an instance of Request)

but I get the following IDE type error:

Method 'getFlashBag' not found in null|\Symfony\Component\HttpFoundation\Session\SessionInterface

The problem is that $request->getSession() returns a SessionInterface, which does not contain the getFlashBag method.

That's why the IDE is complaining, even if the actual object returned by that method is an instance of the Session class which has the getFlashBag method.

When inside a controller, a quick solution can just be using:

$this->addFlash(...);

instead of:

$request->getSession()->getFlashBag()->addFlash(...);