gpt4 book ai didi

php - 我如何使用 make :migration with multiple entity managers?

转载 作者:行者123 更新时间:2023-12-04 15:17:11 25 4
gpt4 key购买 nike

我正在使用 Symfony 5.1.5
我已经配置了多个实体管理器。这是我的 Doctrine .yaml 文件:

doctrine:
dbal:
default_connection: master
connections:
master:
url: '%env(resolve:MASTER_DATABASE_URL)%'
client:
url: '~'

orm:
default_entity_manager: master
auto_generate_proxy_classes: true
entity_managers:
master:
naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
connection: master
mappings:
App\Master:
is_bundle: false
type: annotation
dir: '%kernel.project_dir%/src/Entity/Master'
prefix: 'App\Entity\Master'
alias: Master
client:
naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
connection: client
mappings:
App\Client:
is_bundle: false
type: annotation
dir: '%kernel.project_dir%/src/Entity/Client'
prefix: 'App\Entity\Client'
alias: Client
这是我的 Doctrine _migrations.yaml 文件:
doctrine_migrations:
em: 'master'
migrations_paths:
'DoctrineMigrations': '%kernel.project_dir%/migrations'

我有两个实体
应用\实体\主\子域
应用\实体\客户端\用户
当我运行 symfony 控制台 make:migration 它只适用于主实体管理器。
看着 https://symfony.com/doc/current/doctrine/multiple_entity_managers.html
他们使用这些命令作为示例
 php bin/console doctrine:migrations:diff --em=customer
php bin/console doctrine:migrations:migrate --em=customer
但是,当我尝试运行 php bin/console algorithm:migrations:diff --em=customer 时,我收到一条错误消息,指出““--em”选项不存在。”
我怎样才能让它为 Client 实体管理器生成迁移?

最佳答案

选项 --em 已在“doctrine/migrations”中删除:“^3.0”但它将在 "^3.1" 中重新添加.
您现在可以通过使用 来要求 lib 来使用它。开发 稳定级别composer require doctrine/migrations:^3.1@dev之后可以为每个连接定义一个自定义配置文件

  • 配置/迁移/master.yaml
  • 配置/迁移/client.yaml

  • 配置文件应如下所示:
    migrations_paths:
    'master': '../../src/Migrations/Master'
    em: master
    您可以运行如下命令:
    php bin/console doctrine:migrations:diff --configuration=config/migrations/client.yaml

    php bin/console doctrine:migrations:migrate --configuration=config/migrations/client.yaml

    关于php - 我如何使用 make :migration with multiple entity managers?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64120922/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com