Задать вопрос
@T_verdisla_V
Начинающий

Почему не запускается ServiceManager?

Здравствуйте.
У меня выдает такую ошибку
Unable to resolve service "CategoryManager" to a factory; are you certain you provided it during configuration?

и помимо прочих ссылок на vendor файлы, так же ссылается на
C:\xampp\htdocs\zblog.local\module\Admin\src\Controller\Factory\CategoryControllerFactory.php(19): Zend\ServiceManager\ServiceManager->get('Admin\\Service\\C...')

Вот код этого файла
<?php
namespace Admin\Controller\Factory;

use Interop\Container\ContainerInterface;
use Zend\ServiceManager\Factory\FactoryInterface;
use Admin\Service\CategoryManager;
use Admin\Controller\CategoryController;

/**
 * Это фабрика для IndexController. Ее целью является инстанцирование
 * контроллера.
 */
class CategoryControllerFactory implements FactoryInterface
{
    public function __invoke(ContainerInterface $container, 
                     $requestedName, array $options = null)
    {
        $entityManager = $container->get('doctrine.entitymanager.orm_default');
        $categoryManager = $container->get(CategoryManager::class);

        // Инстанцируем контроллер и внедряем зависимости.
        return new CategoryController($entityManager, $categoryManager);
    }
}

и код самого CategoryManager.php
<?php
namespace Admin\Service;

use Shop\Entity\Category;

// Сервис The CategoryManager, отвечающий за дополнение новых постов.
class CategoryManager 
{
    /**
     * Doctrine entity manager.
     * @var Doctrine\ORM\EntityManager
     */
    private $entityManager;
  
    // Конструктор, используемый для внедрения зависимостей в сервис.
    public function __construct($entityManager)
    {
        $this->entityManager = $entityManager;
    }
    
    // Этот метод добавляет новый пост.
    public function addNewCategory($data) 
    {
        // Создаем новую сущность Post.
        $category = new Category();
        $category->setParentId($data['parent_id']);
        $category->setCategory($data['category']);        
        
        // Добавляем сущность в менеджер сущностей.
        $this->entityManager->persist($category);
        
        // Применяем изменения к базе данных.
        $this->entityManager->flush();
    }
}


Подскажите в чем проблема.
  • Вопрос задан
  • 275 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы