如何增加或减少记录集? odoo9

时间:2016-08-22 13:37:06

标签: python api orm openerp odoo-9

我的记录集是items = product.pricelist.item(4,3,2)

qty_in_product_uom由用户传递(4= min_quantity 500, 3= 250, 2= 100

for rule in items:
    if rule.min_quantity and qty_in_product_uom < rule.min_quantity:
        print inside rule.id

现在我想要这样一个函数,如果条件为真,则选择下一个id

例如。如果用户通过qty_in_product_uom说110然后我上面的条件会给id=2这种情况下我需要id=3

如果id=3,则答案为id=4

如果id=4选择id=4

由于记录集是不可变的,如何实现这一点。

1 个答案:

答案 0 :(得分:1)

记录集(BaseModel类)是一个可迭代的Python对象。这意味着您可以使用该对象,就像使用列表一样。例如:

item = product.pricelist.item(4,3,2)[0]

print item # This will print product.pricelist.item(4,)

如果您想使用其ID从记录集中获取记录,您可以使用:

item = product.pricelist.item(4,3,2).index(3)

print item # This will print product.pricelist.item(3,)