我是 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'
)));
我会感激每一个建议。
谢谢