Python 如何在odoo | openerp中浏览其他模型的现场记录
在新的api中 我有型号名称:Python 如何在odoo | openerp中浏览其他模型的现场记录,python,openerp,odoo,Python,Openerp,Odoo,在新的api中 我有型号名称: _name = "service.rate.provider" 及其领域: base_currency_id = fields.Many2one('res.currency', string="Base currency") 基本货币id记录来自res.currency模型 如果我在做“打印self.base\u currency\u id”,它会给出res.currency(1,2,) 但是如果我想浏览它以查找service.rate.provider模型,
_name = "service.rate.provider"
及其领域:
base_currency_id = fields.Many2one('res.currency', string="Base currency")
基本货币id记录来自res.currency模型
如果我在做“打印self.base\u currency\u id”,它会给出res.currency(1,2,)
但是如果我想浏览它以查找service.rate.provider模型,比如:service.rate.provider(1,2,)
那我怎么办?
提前感谢这里的
服务.费率.提供商
是您的模型,因此在课堂上,无论您在哪里找到self
,都是同一模型的记录集
您需要记住以下几个因素:
如果在onchange方法中使用self
,并且未保存该记录,则该记录将不会成为记录集(浏览)记录,但使用self
将给出“表单”的所有可能值
如果您在按钮单击中使用self
,则会提供一个记录集(浏览记录),即service.rate.provider(1,2)
,您可以在该记录集上进行处理。在这里,您可以使用类似于@api.one
的装饰程序
如果在fields.function中使用self
,则其行为与提供记录集的按钮单击相同
还可以使用此self
调用orm方法,如search
或browse
或unlink
或copy
您可以使用.search()或.browse()