No curso MVC com PHP: Entenda o padrão Model-View-Controller Aula 07 PSRs e Boas Práticas. 11 Desafio
Já tentei de tudo e da erro http://localhost:8080/excluir-curso?id=1 erro ao chamar a url Fatal error: Uncaught Doctrine\Persistence\Mapping\MappingException: Class 'Alura\Cursos\Controller\Curso' does not exist in C:\php-instalador\php\teste\vendor\doctrine\persistence\lib\Doctrine\Persistence\Mapping\MappingException.php:94 Stack trace: #0 C:\php-instalador\php\teste\vendor\doctrine\persistence\lib\Doctrine\Persistence\Mapping\RuntimeReflectionService.php(24): Doctrine\Persistence\Mapping\MappingException::nonExistingClass('Alura\Cursos\Co...') #1 C:\php-instalador\php\teste\vendor\doctrine\persistence\lib\Doctrine\Persistence\Mapping\AbstractClassMetadataFactory.php(252): Doctrine\Persistence\Mapping\RuntimeReflectionService->getParentClasses('Alura\Cursos\Co...') #2 C:\php-instalador\php\teste\vendor\doctrine\persistence\lib\Doctrine\Persistence\Mapping\AbstractClassMetadataFactory.php(285): Doctrine\Persistence\Mapping\AbstractClassMetadataFactory->getParentClasses('Alura\Cursos\Co...') #3 C:\php-instalador\php\teste\vendor\doctrine\orm\lib\Doctrine\ORM\Mapping\ClassMetadataFactory.php(78): Doctrine in C:\php-instalador\php\teste\vendor\doctrine\persistence\lib\Doctrine\Persistence\Mapping\MappingException.php on line 94
Segue o código do curso que não funciona
<?php
namespace Alura\Cursos\Controller;
use Doctrine\ORM\EntityManagerInterface;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
class Exclusao implements RequestHandlerInterface
{
/**
* @var EntityManagerInterface
*/
private $entityManager;
public function __construct(EntityManagerInterface $entityManager)
{
$this->entityManager = $entityManager;
}
public function handle(ServerRequestInterface $request): ResponseInterface
{
$queryString = $request->getQueryParams();
$idEntidade = $queryString['id'];
$entidade = $this->entityManager
->getReference(Curso::class , $idEntidade);
$this->entityManager->remove($entidade);
$this->entityManager->flush();
return new Response(302, ['Location' => '/novo-curso']);
}
}
Aguardo resposta
Att: Cezar