Всем привет. Только начинаю разбираться с Doctrine 2 (2.5.0).
Документацию прочитал, делаю всё по инструкции, но удача почему-то мне не улыбается.
Что я делаю не так?
/src/user.php<?php
/** @Entity @Table(name="user") */
class User {
/** @Id @Column(type="integer") @GeneratedValue */
protected $userId;
public function getUserId() {
$userId = $this->userId;
return $userId;
}
}
bootstrap.php<?php
use Doctrine\ORM\Tools\Setup;
use Doctrine\ORM\EntityManager;
require_once "vendor/autoload.php";
$entityPath = array('src');
$isDevMode = true;
$config = Setup::createAnnotationMetadataConfiguration($entityPath, $isDevMode);
$databaseParameters = array('driver' => 'pdo_mysql',
'user' => 'root',
'password' => '',
'dbname' => 'doctrine');
$entityManager = EntityManager::create($databaseParameters, $config);
$user = $entityManager->find('User', 1);
Результат выполнения:
Fatal error: Uncaught exception 'Doctrine\Common\Persistence\Mapping\MappingException' with message 'Class 'User' does not exist' in C:\OpenServer\domains\doctrine\vendor\doctrine\common\lib\Doctrine\Common\Persistence\Mapping\MappingException.php:96 Stack trace: #0 C:\OpenServer\domains\doctrine\vendor\doctrine\common\lib\Doctrine\Common\Persistence\Mapping\RuntimeReflectionService.php(41): Doctrine\Common\Persistence\Mapping\MappingException::nonExistingClass('User') #1 C:\OpenServer\domains\doctrine\vendor\doctrine\common\lib\Doctrine\Common\Persistence\Mapping\AbstractClassMetadataFactory.php(281): Doctrine\Common\Persistence\Mapping\RuntimeReflectionService->getParentClasses('User') #2 C:\OpenServer\domains\doctrine\vendor\doctrine\common\lib\Doctrine\Common\Persistence\Mapping\AbstractClassMetadataFactory.php(311): Doctrine\Common\Persistence\Mapping\AbstractClassMetadataFactory->getParentClasses('User') #3 C:\OpenServer\domains\doctrine\vendor\doctrine\common\lib\Doctrine\Common\Persistence\Mapping\AbstractClassMetadataFactory.php(216): Doctrine\Common\Persistence\Mapping\AbstractClassMetadataFactory->loadMetadata('User') #4 C:\OpenServer\domains\doctrine\vendor\doctrine\orm\lib\Doctrine\ORM\EntityManager.php(360): Doctrine\Common\Persistence\Mapping\AbstractClassMetadataFactory->getMetadataFor('User') #5 C:\OpenServer\domains\doctrine\bootstrap.php(21): Doctrine\ORM\EntityManager->find('User', 1) #6 {main} thrown in C:\OpenServer\domains\doctrine\vendor\doctrine\common\lib\Doctrine\Common\Persistence\Mapping\MappingException.php on line 96
Если подключать файл
/src/User.php через include, то всё работает. В чем же проблема?