【发布时间】:2013-12-07 13:59:00
【问题描述】:
我试图在 Symfony 2 中使用教义建立多个数据库连接,但无法做到。
我在 Google 和 stack-overflow 中进行了广泛的搜索,但在任何地方都是通过 config.yml 文件或动态数据库完成的,其中所有数据库都具有相同的 schema/entities 。
但就我而言,数据库是根据子域确定的,并且所有子域的数据库架构都不相同。
例如:
test1.example.com => 应该加载 test1 db
test2.example.com => 将加载 test2 db
test1 和 test2 DB 都是不同的,都是在 DB 级别创建的,并且在学说中没有实体条目。
谁能帮我在 Symfony 2 中做到这一点。
【问题讨论】:
-
您是否尝试在不创建 Doctrine 实体的情况下执行此操作?如果有,如何管理实体对象?
-
是的,我没有创建原则条目,因为我不会事先知道架构/表结构。表和数据库名称是已知的,但不是表的字段,因为它可以被更改/删除/更改子域的管理员。示例:test3.example.com 的管理员将添加字段/自定义表格,这些都是直接使用 SQL 完成的。之后,test3.example.com 的其他用户将使用这些表。我知道我可以直接使用 SQL 进行查询,但它会导致编码混乱,因为我必须处理所有事情:(希望 Doctrine + Symfony 2 中有一些方法
-
即使我为每个新数据库创建 Doctrine 实体,它也会导致更多问题,因为原则条目依赖于对 SAAS 环境不利的物理文件 :((尤其是在基于负载自动放大/缩小期间AWS )
标签: php mysql symfony doctrine-orm doctrine