поэтому я пытаюсь изучить Zend Framework 3, и теперь я застреваю на этой ошибке несколько часов:
Unable to resolve service "Blog\Controller\ListController" to a factory; are
you certain you provided it during configuration?
Учебное пособие, по которому я учусь: https://docs.zendframework.com/tutorials/in-depth-guide/models-and-servicemanager/
В учебнике в пункте «Написание фабричного класса» говорится, что это сообщение об ошибке ожидается, но в «Регистрация служб» оно должно быть исправлено, но это не так.
Мой модуль.config.php:
<?php
namespace Blog;
use Zend\Config\Factory;
use Zend\Router\Http\Literal;
use Zend\ServiceManager\Factory\InvokableFactory;
return [
'service_manager' => [
'aliases' => [
Model\PostRepositoryInterface::class => Model\PostRepository::class,
],
'factories' => [
Model\PostRepository::class => InvokableFactory::class,
],
],
'controllers' => [
'factories' => [
// Update the following line:
Controller\ListController::class =>
Factory\ListControllerFactory::class,
],
],
'router' => [
'routes' => [
'blog' => [
'type' => Literal::class,
'options' => [
'route' => '/blog',
'defaults' => [
'controller' => Controller\ListController::class,
'action' => 'index',
],
],
],
],
],
'view_manager' => [
'template_path_stack' => [
__DIR__ . '/../view',
],
],
];
мой ListController.php:
namespace Blog\Controller;
use Blog\Model\PostRepositoryInterface;
use Zend\Mvc\Controller\AbstractActionController;
class ListController extends AbstractActionController
{
/**
* @var PostRepositoryInterface
*/
private $postRepository;
public function __construct(PostRepositoryInterface $postRepository)
{
$this->postRepository = $postRepository;
}
}