![](/img/trans.png)
[英]How to connect to another different database in PostgreSQL with ORM in Odoo?
[英]How to connect to a different database in OpenERP?
如何根據所使用的模塊連接到另一個數據庫? 我們的情況如下:
我們有一個獨立的應用程序,它在特定服務器上具有自己的數據庫,而OpenERP在其他服務器上運行。 我們想在OpenERP中創建一個模塊,該模塊可以利用獨立應用程序服務器上的實體,而不是在自己的數據庫中創建自己的實體,這可能嗎? 我們如何更改ORM用於連接到其自己的數據庫的連接參數以指向其他數據庫?
當然,一種方法是使用base_synchro模塊在兩個數據庫之間同步所需的實體,但是考慮到大量數據,我們不希望重復。 另一種方法是使用xmlrpc將數據獲取到OpenERP中,但這仍然需要實體存在於OpenERP數據庫中。
沒有數據重復如何解決這個問題? 如何基於不同的數據庫在OpenERP中創建模塊?
連接到外部應用程序的一種方法是創建連接器模塊。 您已經可以查看幾個連接器模塊:
例如,joomla連接器使用joomla插件來處理OpenERP和joomla之間的通信。 使用的通信協議是XML-RPC,但是您可以選擇所需的任何協議。 您甚至可以選擇使用psycopg2模塊直接連接到外部數據庫(如果外部數據庫使用的是Postgresql),但是不建議這樣做。 但是,如果此外部應用程序沒有連接API,也許您別無選擇。
您需要知道有哪些可用的方法可以連接到該外部應用程序並選擇其中一種。 選擇正確的協議后,即可創建OpenERP模塊。
您可以使用osv.TransientModel對象(以前稱為osv內存)映射存儲在外部應用程序上的實體。 與這些對象有關的表仍將在OpenERP數據庫中創建,但數據是易變的(在一段時間后將其刪除)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.