多EntityManager与连接在TEST环境的数据库创建问题求助
Doctrine TEST环境多数据库创建解决方案
- 无需完全照搬DEV环境的多EntityManager配置,直接在test配置块中为每个连接单独设置
dbname_suffix即可,但需要明确指定连接执行数据库创建命令。 - 默认情况下,
doctrine:database:create仅针对默认连接操作。要创建第二个数据库,需添加--connection参数指定目标连接名,示例命令:symfony console --env=test doctrine:database:create --connection=你的第二个连接名称 - 若想一次性创建所有连接对应的数据库,可编写简单脚本循环执行命令,或确保test配置块中两个连接的配置正确,示例配置:
doctrine: dbal: default_connection: default connections: default: url: '%env(resolve:DATABASE_URL)%' dbname_suffix: '_test' second_connection: url: '%env(resolve:SECOND_DATABASE_URL)%' dbname_suffix: '_test' - 当然,你也可以选择和DEV环境保持一致的EntityManager配置,但这并非必要条件——只要DBAL层面的多连接配置无误,就能通过指定连接参数创建对应数据库。
内容的提问来源于stack exchange,提问作者Khribi Wessim
相关产品推荐
相关产品推荐

