【问题标题】:Symfony: type error when using flash bag in controllerSymfony:在控制器中使用闪存包时出现类型错误
【发布时间】:2016-11-18 15:55:16
【问题描述】:

为了获取session的flash包并添加flash消息,在控制器中我调用:

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

(其中$requestRequest 的一个实例)

但我收到以下 IDE 类型错误:

在中找不到方法“getFlashBag” null|\Symfony\Component\HttpFoundation\Session\SessionInterface

【问题讨论】:

    标签: php symfony session typeerror


    【解决方案1】:

    问题是$request->getSession()返回一个SessionInterface,它不包含getFlashBag方法。

    这就是 IDE 抱怨的原因,即使该方法返回的实际对象是具有 getFlashBag 方法的 Session 类的实例。

    在控制器内部时,可以使用以下快速解决方案:

    $this->addFlash(...);

    代替:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-15
      • 2017-09-21
      • 2022-01-20
      • 2016-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多