Symfony 3:无法向我的控制器

时间:2016-01-09 21:08:16

标签: php dependency-injection symfony

我创建了一个自定义帮助器类并将其声明为服务。 如果我在控制器中使用以下命令获取此帮助,它会起作用:

$this->get('tee.helper.alert');

但我觉得DI更好。然后我宣布我的控制器也是服务:

parameters:
    tee.helper.alert.class: TigreEtEuphrateBundle\Service\AlertHelper
    tee.controller.default.class: TigreEtEuphrateBundle\Controller\DefaultController

services:

#    CONTROLLERS
    tee.controller.default:
        class: "%tee.controller.default.class%"
        arguments: ["@tee.helper.alert"]

#    HELPERS
    tee.helper.alert:
        class: "%tee.helper.alert.class%"
        arguments: ["@session"]

但是当我的控制器被调用时,我得到一个FatalError,因为没有给出构造函数中的必需参数。 这基本上是我的控制器类:

class DefaultController extends Controller
{
    private $alert_helper;

    public function __construct(AlertHelper $alert_helper)
    {
        $this->alert_helper = $alert_helper;
    }
    // ...
}

出了什么问题? :/

0 个答案:

没有答案