0

我是 Symfony 的新手,在完成“创建自己的 PHP 框架”课程(基于 symfony 组件)之后,我想通过按模型注入控制器的构造函数来扩展我的框架,但我被卡住了。我收到以下错误。

错误:

可捕获的致命错误:传递给 Controller\HelloController::__construct() 的参数 1 必须是 Model\TestModel 的实例,没有给出,在 /var/www/html/vendor/symfony/http-kernel/Controller/ControllerResolver.php 中调用在第 195 行并在第 21 行的 /var/www/html/src/Controller/HelloController.php 中定义

HelloController 构造函数

public function __construct(TestModel $testModel)
{
    $this->testModel = $testModel;
}

在容器中

....
$containerBuilder->register('model', \Model\TestModel::class);

$containerBuilder->register('hello', \Controller\HelloController::class)
->addArgument(new Reference('model'));   
....

路线

$routes->add('index', new Routing\Route('/hello/{name}',array(
'name' => 'World',
'_controller' => 'Controller\HelloController::index'
)));

我会感激每一个建议。

谢谢

4

0 回答 0