Мне как-то странно, что вы используете PHPDriver для ORM, а не AnnotationDriver, поскольку информация о вашей базе данных в классах представлена в аннотациях.
В любом случае, если команда php app/console doctrine:mapping:info
дает вам только 1 сущность, это означает, что ваш другой пакет, содержащий класс User, не загружен в файл app / AppKernel.php.Загрузите свой UserBundle, добавив строку
new xxx\UserBundle\xxxUserBundle(),
в массив $bundles
в функции registerBundles()
.После этого эта функция должна выглядеть примерно так:
public function registerBundles()
{
$bundles = array(
new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
new Symfony\Bundle\SecurityBundle\SecurityBundle(),
new Symfony\Bundle\TwigBundle\TwigBundle(),
new Symfony\Bundle\MonologBundle\MonologBundle(),
new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
new Symfony\Bundle\DoctrineBundle\DoctrineBundle(),
new Symfony\Bundle\AsseticBundle\AsseticBundle(),
new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
new JMS\SecurityExtraBundle\JMSSecurityExtraBundle(),
new xx\FileBundle\xxFileBundle(),
new xxx\UserBundle\xxxUserBundle(),
);
if (in_array($this->getEnvironment(), array('dev', 'test'))) {
$bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle();
$bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle();
$bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle();
}
return $bundles;
}
Конечно, замените 'xx' и 'xxx' настоящими именами.
Надеюсь, это поможет.