2011-12-09 81 views

回答

8

你可以這樣做:

doctrine: 
    dbal: 
     default_connection: alpha 
     connections: 
      alpha: 
       driver:  pdo_mysql 
       host:  localhost 
       dbname:  alpha 
       user:  root 
       charset: UTF8 
      beta: 
       driver:  pdo_pgsql 
       host:  localhost 
       dbname:  beta 
       user:  root 
       charset: UTF8 
    orm: 
     auto_generate_proxy_classes: %kernel.debug% 
     entity_managers: 
      alpha: 
       connection: alpha 
      beta: 
       connection: beta 

你看,我們宣佈在dbal節兩個連接,並在orm一二實體管理器。

之後,您可以同時使用:

$emAlpha = $this->getDoctrine()->getEntityManager('alpha'); 
$emBeta = $this->getDoctrine()->getEntityManager('beta'); 

由於alpha一個被定義爲默認的,您可以訪問它時沒有指定名稱:

$emAlpha = $this->getDoctrine()->getEntityManager(); 
+0

謝謝!但是,如果我只在讀模式下使用某些數據庫,實體類中的setter方法是必須使用的? – Neka

+0

需要我指定現有數據庫(處於只讀模式)的實體類中的字段類型? – Neka

+0

是的,因爲學說需要這些信息來正確地爲你的實體提供水分...... – Herzult

相關問題