如何在 Doctrine 中为 EntityManager 或连接指定 migrations_paths?

问题描述

可以定义多个路径,其中存储迁移:

doctrine_migrations.yaml

doctrine_migrations:
    migrations_paths:
        'Foo\Migrations': '%kernel.project_dir%/src/App'
        'Bar\Migrations': '/path/to/other/migrations'

但是整个列表总是被处理。我有一个包含多个数据库/多个连接/多个 EntityManager 的应用程序。所以现在我想跑

$ PHP bin/console doctrine:migrations:diff --em=foo
$ PHP bin/console doctrine:migrations:migrate --em=foo

我想得到的结果是:1. 获取在相应文件Foo\Migrations 中创建的新迁移和 2. 仅执行来自相同顺序且仅在相应数据库中的新迁移。

>

目前我正在使用一种解决方法:我正在停用 doctrine_migrations.yaml 中不相关的路径。然后它起作用了。但这不是一个好的解决方案。

如何通过传递给 EntityManager 或连接来强制 Doctrine 使用特定的迁移目录?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)