我假设它用于引用 openerp 中其他模块中的字段,但我不确定。
在这里,他们以某种方式从一个产品模块到销售模块获取价格。
price = self.pool.get('product.pricelist').price_get(cr, uid, [pricelist], product, qty or 1.0, partner_id, ctx)[pricelist]
if price is False:
warn_msg = _("Cannot find a pricelist line matching this product and quantity.\n"
"You have to change either the product, the quantity or the pricelist.")
warning_msgs += _("No valid pricelist line found ! :") + warn_msg +"\n\n"
else:
result.update({'price_unit': price})
if context.get('uom_qty_change', False):
return {'value': {'price_unit': price}, 'domain': {}, 'warning': False}
最佳答案
pool
在这里只是一个类似字典的对象,用于存储 OpenERP models
的实例,如 res.users
或 ir.model.data
。
OpenERP/Odoo 的多数据库特性: 单个 OpenERP 服务器进程可以管理多个数据库,并且对于每个数据库,安装的模块集以及模型集可以不同。
所以,我们有不同的 pools
,每个数据库一个,以及引用我们已经在的模型实例的正常方法, self
感谢 The Hypered Blog 对 self.pool.get()
的精彩解释。
有关更多信息,请查看该链接。
关于openerp - python和odoo中的self.pool.get()是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33408440/