我使用带有 --from-database
选项的 doctrine:mapping:convert
命令生成了一个名为“MyEntity”的实体,其中包含注释类型映射信息。
该实体位于非标准文件夹中,该文件夹在 ORM 配置中定义为:
doctrine:
orm:
entity_managers:
default:
MyEntity:
mapping: true
type: annotation
dir: '%kernel.root_dir%/../src/Path/To/Entity'
prefix: 'Path\To\Entity'
is_bundle: false
该类出现在适当的目录中,并且具有所有正确的属性和注释,但是当我尝试使用 doctrine:migrations:diff 命令时,结果是迁移,该迁移会删除该表实体首先是从 生成的。这似乎意味着由 doctrine:mapping:convert
命令生成的映射信息没有被 doctrine:migrations:diff
命令获取。任何对此问题的见解都将不胜感激。
最佳答案
返回问题后,我注意到生成的实体类位于全局命名空间中,而不是配置文件指定的命名空间中,纠正这一点立即解决了问题。
关于php - Doctrine :迁移:差异未检测非标准目录中实体的映射信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40285196/