我一直在開發openerp-7.0中的模塊。我一直在使用python和eclipse IDE進行開發。我想知道openerp開發中bw self.browse和self.pool.get的區別。 Plz儘快回覆我。在openerp開發中,diff bw self.browse和self.pool.get是什麼?
謝謝。 最好的祝願 希望暗示
我一直在開發openerp-7.0中的模塊。我一直在使用python和eclipse IDE進行開發。我想知道openerp開發中bw self.browse和self.pool.get的區別。 Plz儘快回覆我。在openerp開發中,diff bw self.browse和self.pool.get是什麼?
謝謝。 最好的祝願 希望暗示
self.pool.get
用於從所使用的數據庫的註冊表池中獲取orm模型的單例實例。 self.browse
是orm模型的一種返回瀏覽記錄的方法。
作爲粗略的比喻,可以將self.pool.get
視爲獲取數據庫光標,self.browse
作爲通過Id查找記錄的sql選項。請注意,如果您通過瀏覽一個整數,您將獲得一個瀏覽記錄,如果您傳遞一個ID列表,您將獲得一個瀏覽記錄列表。
要通過ID訪問記錄,你需要使用ORM的瀏覽方法
def some_moethod(self, cr, uid, ids):
self.browse(cr, uid, ids) // same class
do_some_Stuff
return something
當你正在寫在同一個類你想瀏覽,但如果你想從另一個類瀏覽記錄,其記錄的方法可以使用,在這種情況下,首先你需要使用self.pool.get(「another.class」)來創建類的實例,那麼你可以瀏覽它
如:
def some_moethod(self, cr, uid, ids):
self.pool.get('another.class').browse(cr, uid, ids)
do_some_Stuff
return something
`