Odoo 8 - 记录与新api相同的浏览?

And*_*ius 4 api openerp openerp-8 odoo

我阅读了Odoo 8新的api文档,但找不到它(如果有的话).当你拥有模型id/ids时,如何使用新的api直接浏览记录/记录?

例如,让说,我想浏览res.partner模式,并有ID列表:ids = [1, 2, 3].

使用旧的api,你可以这样做:

partners = self.pool.get('res.partner').browse(cr, uid, ids)
Run Code Online (Sandbox Code Playgroud)

使用新的api,我能想到的唯一方法是使用搜索,因为它返回记录(而不是旧的api中的ID),如下所示:

partners = self.env['res.partner'].search([('id', 'in', ids)])
Run Code Online (Sandbox Code Playgroud)

这给出了相同的结果,但我想知道性能(它是否相同?)和便利性(避免使用搜索,当你已经知道id,只需要浏览记录)?

或者搜索是新api的首选方式,当你需要浏览记录时使用?

Lud*_*mer 5

你仍然可以使用browse新的api.这样做的理由要少得多,因为使用新的API通常会处理记录集,而不是数字ID列表.但是你绝对可以browse在实际需要的时候使用它:

partner_ids = [1, 2, 3]
partners = self.env['res.partner'].browse(partner_ids)
Run Code Online (Sandbox Code Playgroud)