如何在Odoo 11

时间:2018-01-10 07:02:04

标签: python-3.x odoo-11

我希望通过search()模型中提供的product.product方法在Odoo 11中获取具有多个条件的产品列表。

这将获得一个列表(其中包含一个代码为12345的产品,如果存在)

product_object = self.env['product.product']
product = product_object.search([('default_code', '=', '12345')])

但我想过滤列表,只有在过去的更新日期与给定日期相比时才能获得产品。 (注意:updated_atproduct.product模型的自定义字段之一,类型为str

这不会按预期工作:

product_object = self.env['product.product']
product = product_object.search(
            ['&', ('default_code', '=', '12345'), ('updated_at', '<', '2017-01-10 12:01:00')])

product变量内部始终没有任何内容。

如何搜索以date为条件的product.product模型。我必须将字段类型从string更改为datetime吗?

1 个答案:

答案 0 :(得分:1)

     **@odoo v11 : Search method with Datetime field.**
  • 将updated_at字段类型更改为Datetime

     updated_at = fields.Datetime('Updated Date', required=True)
    
     current_time = fields.Datetime.now()
     product_object = self.env['product.product']
     product = product_object.search([('default_code', '=', '12345'), ('updated_at', '<', current_time)])