首页 > 解决方案 > 如何在搜索条件下环境 odoo 模型?

问题描述

我制作了一个模型,它称为零件号作为示例,它包含零件号作为名称字段和汽车和型号字段,也在 product.template 视图中我添加了拖车字段汽车和型号以及带有打印方法的按钮零件号包含相同的汽车和型号,它运行良好,但如果我删除搜索条件,它不会给出任何结果它会打印所有结果这个代码

class autopart(models.Model):
_inherit = 'product.template'

@api.multi
@api.depends('car','model')
def partnum(self):
    part=self.env['part_num'].search([('model_id', '=', 'model'),('car_id', '=', 'car')])
    print(part)
    pass

car = fields.Many2one(comodel_name="cars", store=True, string="Car", ondelete='restrict', required=False, )
model = fields.Many2one(comodel_name="models", store=True, string="Model", ondelete='restrict', required=False,default='', domain="[('car','=', car )]")

这是零件编号模型

class part_num(models.Model):
_rec_name = 'name'
_name = 'part_num'

name = fields.Char(string="name",required=True)

car_id = fields.Many2one(comodel_name="cars", string="car", required=False, )
model_id = fields.Many2one(comodel_name="models", string="model", required=False, )

标签: python-3.xormodooodoo-12

解决方案


嗨 Fouad 试试这种方式可能会奏效

part=self.env['part_num'].search([('model_id', '=', self.model.id),('car_id', '=', self.car.id)])

当您使用“汽车” odoo 时,将其视为名称而不是对象


推荐阅读