如何在symfony原则下建立多数据库


How to setup multidatabase in symfony doctrine

我使用symfony为我的项目,我有两个数据库,但是我只知道为单个数据库设置symfony,如下面的代码所示形式提供

all:doctrine:
class: sfDoctrineDatabase
param:
  dsn:      mysql:host=localhost;dbname=gapi
  username: root
  password: 

所以,请帮助我关于设置两个或更多的数据库symfony学说

databases.yml的结构如下:

all: # <-- Environment
  doctrine: # <-- Name of connection
    class: sfDoctrineDatabase # <-- Connection class
    param: # <-- Parameters for the class
      dsn:      mysql:host=localhost;dbname=gapi
      username: root
      password: 

所以如果你想添加一个额外的数据库连接(databases.yml specifies the connections, not the databases itself). You can copy the block from原则' on,并给它一个新的名称。像这样:

all: # <-- Environment
  doctrine: # <-- Name of connection
    class: sfDoctrineDatabase # <-- Connection class
    param: # <-- Parameters for the class
      dsn:      mysql:host=localhost;dbname=gapi
      username: root
      password: 
  # Extra connection:
  connection2: # <-- Name of connection
    class: sfDoctrineDatabase # <-- Connection class
    param: # <-- Parameters for the class
      dsn:      mysql:host=localhost;dbname=database2
      username: root
      password: 

但是要注意:处理多个连接需要对Symfony和Doctrine有很好的理解,你必须很好地思考和测试,以确保你在正确的连接上执行查询。