2012-08-31 50 views
1

在我的Symfony2瀏覽器遊戲中,我有一個使用Doctrine 2 ORM的用戶實體。遊戲有兩個實例,經典和速度,主要是彼此獨立的,並且都使用自己的數據庫(相同的結構)。唯一的問題是用戶能夠連接他們的賬戶,因此應該顯示關聯賬戶的一些基本用戶信息。爲此,我將classic_id和speed_id作爲連接到另一個用戶實體的屬性。但是,就我所知,這將是一個跨數據庫連接,在第二條學說中是不可能的。我還發現有多個實體經理可以擁有自己的連接,但我認爲他們只能用於完成捆綁,對嗎?在不同數據庫中使用Doctrine 2實體

所以在這裏我需要一些解決方法來解決這個問題,最簡單的方法是什麼?

回答

2

實際上有可能做跨數據庫連接,但它是比技巧而不是功能,我不建議使用它。

要將實體與不同實體管理器之間的實體分離,可以使用指向管理實體的「dir」屬性。例如:

doctrine: 
    orm: 
     default_entity_manager: default 
     entity_managers: 
      default: 
       connection:  default 
       mappings: 
        AppBundle: 
         dir:  Path/To/EntityFolder1 
      anotherone: 
       connection:  anotherconnection 
       mappings: 
        AppBundle: 
         dir:  Path/To/EntityFolder2 

還有差記錄「前綴」選項,但我並沒有弄清楚它是什麼尚未

問候(你可以自己嘗試:))!

相關問題