Doctrine orm 工作但隐藏/缺失的实体

Doctrine orm 工作但隐藏/缺失的实体,doctrine-orm,zend-framework2,Doctrine Orm,Zend Framework2,我的zf2应用程序中有几个模块,它们都有自己的实体,并且都在同一个连接上 一个小图表来解释这种情况: -Module 1 -Entity A -Entity B -Module 2 -Entity C -Entity B (all on the same database connection) 问题是所有的实体都在工作,我可以获取、更新它们等等,但有些是“看不见的”。我有一些跨模块的关系,他们的工作也很好 例如,当我使用php public/index.php

我的zf2应用程序中有几个模块,它们都有自己的实体,并且都在同一个连接上

一个小图表来解释这种情况:

-Module 1
    -Entity A
    -Entity B
-Module 2
    -Entity C
    -Entity B
(all on the same database connection)
问题是所有的实体都在工作,我可以获取、更新它们等等,但有些是“看不见的”。我有一些跨模块的关系,他们的工作也很好

例如,当我使用
php public/index.php orm:info
命令或Zend Developer工具栏时,模块2中的所有实体都不会出现

编辑实体时,我必须手动将数据库更新为
php public/index.php orm:schema tool:update
表示
无需更新-您的数据库已与当前实体元数据同步。

实体是可以提取的,它们只是没有被ZDT或终端“看到”,我不知道我做错了什么


感谢您的帮助

这通常是由于实体的路径没有:


我更改了我的
我的\u注释\u驱动程序
(从
bm\u实体
更改为
应用程序\u实体
)的等价项,它工作了,可能是与其他模块冲突
<?php
    return array(
        'doctrine' => array(
            'driver' => array(
                // defines an annotation driver with two paths, and names it `my_annotation_driver`
                'my_annotation_driver' => array(
                    'class' => 'Doctrine\ORM\Mapping\Driver\AnnotationDriver',
                    'cache' => 'array',
                    'paths' => array(
                        'path/to/my/entities',
                        'another/path'
                    ),
                ),

                // default metadata driver, aggregates all other drivers into a single one.
                // Override `orm_default` only if you know what you're doing
                'orm_default' => array(
                    'drivers' => array(
                        // register `my_annotation_driver` for any entity under namespace `My\Namespace`
                        'My\Namespace' => 'my_annotation_driver'
                    )
                )
            )
        )
    );