In my doctrine.php
I have the following configuration
<?php // See https://symfony.com/doc/current/reference/configuration/framework.html namespace SymfonyComponentDependencyInjectionLoaderConfigurator; return static function (ContainerConfigurator $container) { $container->extension('doctrine', [ 'dbal' => [ 'url' => '%env(DATABASE_URL)%', ], 'orm' => [ 'auto_generate_proxy_classes' => true, 'auto_mapping' => true, 'mappings' => [ 'default' => [ 'is_bundle' => false, 'type' => 'annotation', 'dir' => '%kernel.project_dir%/src/Entity', 'prefix' => 'AppEntity', 'alias' => 'App' ] ] ] ]); };
And my Entity class is defined as follows
namespace AppEntity; use DoctrineORMMappingEntity; use DoctrineORMMappingTable; #[Entity(repositoryClass: EntityRepository::class)] #[Table(name: 'entity')] class Entity ...
I tried accessing it like by calling getRepository
like this
$entityRepository = $entityManager->getRepository(Entity::class);
But this fails with the is not a valid entity or mapped super class
P.S.
If necessary, this is my EntityRepository.php
<?php namespace AppRepository; use AppEntityEntity; use DoctrineBundleDoctrineBundleRepositoryServiceEntityRepository; use DoctrinePersistenceManagerRegistry; class EntityRepository extends ServiceEntityRepository { public function __construct(ManagerRegistry $registry) { parent::__construct($registry, Entity::class); } }
Advertisement
Answer
I found an issue. I am a dummy..
I had to change
'type' => 'annotation'
to
'type' => 'attribute'
Since I’m using php8 syntax. Sorry lads!