auto_mapping
ist, wo Doktrin automatisch das Mapping von Ihrem Bündel Resources/config/doctrine
Verzeichnis laden wird.
Wenn Sie den Wert auf false setzen, müssen Sie die Mappings selbst laden. Dies kann nützlich sein, wenn Sie Zuordnungen für Entitäten anstelle von zugeordneten Superklassen in einem Lieferantenpaket haben, das Sie überschreiben möchten.
Sie können dies entweder über die Zuordnungen in der Lehre config unter Angabe ...
doctrine:
orm:
entity_managers:
default:
mappings:
AcmeUnknownBundle:
mapping: true
type: yml
dir: "Resources/config/doctrine"
alias: ~
prefix: Acme\UnknownBundle\Entity
is_bundle: true
sie in irgendeiner Art von mappings pass Hinzufügen ...
class AcmeUnknownBundle extends Bundle
{
public function build(ContainerBuilder $container)
{
parent::build($container);
// ...
$modelDir = realpath(__DIR__.'/Resources/config/doctrine/model');
$mappings = array(
$modelDir => 'Acme\UnknownBundle\Model',
);
$ormCompilerClass = 'Doctrine\Bundle\DoctrineBundle\DependencyInjection\Compiler\DoctrineOrmMappingsPass';
if (class_exists($ormCompilerClass)) {
$container->addCompilerPass(
DoctrineOrmMappingsPass::createYamlMappingDriver(
$mappings,
array('acme_unknown.model_manager_name'),
true
));
}
}
}