Odoo 如何使用动态域?
我需要的是,一旦我选择了患者,当我搜索选择nameLab时,我想显示与所选患者相关的唯一实验室(patient_id should=patient) 我的班级:Odoo 如何使用动态域?,odoo,odoo-10,Odoo,Odoo 10,我需要的是,一旦我选择了患者,当我搜索选择nameLab时,我想显示与所选患者相关的唯一实验室(patient_id should=patient) 我的班级: class labinvoice(models.Model): _name=“实验室发票” order\u line=fields.One2many('lab.order.line','order\u id',string='order line',copy=True) nameLab=fields.manyOne('medical.l
class labinvoice(models.Model):
_name=“实验室发票”
order\u line=fields.One2many('lab.order.line','order\u id',string='order line',copy=True)
nameLab=fields.manyOne('medical.lab.patient',related='order\u line.nameLab')
patient=字段.manyOne('medical.patient',related='order\u line.patient\u id')
patient\u id=fields.manyOne(comodel\u name='medical.patient',required=True,)
类实验室基线(models.Model):
_名称='lab.order.line'
nameLab=fields.manyOne(
string='Lab',
comodel_name='medical.lab.patient',
必需=真,
ondelete='cascade',
)
病人=fields.many21(
“医疗,病人”,
string='patient',
相关class='nameLab.patient_id',
readonly=True,
必需=真,
)
我的看法是:
实验室发票表格
实验室发票
您正在寻找域
,它可以在您的字段中用Python或XML进行设置,但通常XML是最常用的使用方式
按照现在表单的设计方式,您可以进行此更新
有关更多详细信息,请参阅 您正在寻找
域
,它可以用Python或XML在您的字段中设置,但通常XML是最常用的使用方式
按照现在表单的设计方式,您可以进行此更新
有关更多详细信息,请参阅 我们可以在更改父对象后再进行此操作 我们处理这个问题是因为函数可以返回onchange本身的域 比如--> @api.onchange(“患者”) def onchange_患者(自身): 认为它有帮助
毗瑟奴我们可以在父母改变后处理这个问题 我们处理这个问题是因为函数可以返回onchange本身的域 比如--> @api.onchange(“患者”) def onchange_患者(自身): 认为它有帮助
毗湿奴它不返回名称你能用完整视图和错误更新你的问题吗?它不返回名称你能用完整视图和错误更新你的问题吗?谢谢你的回答。但是它给了我这个错误:返回{'domain':{'namelab':[('id','in',self.patient\u id.namelab.ids)]}}AttributeError:'medical.patient'对象没有属性'namelab',您不需要在更改时使用
。在这种情况下,它可以通过域来完成,这将是一个更干净的解决方案。我试图通过域来使用onchange,但没有成功。没有结果。。。我认为问题是由于订单线(one2many)造成的,谢谢你的回答。但是它给了我这个错误:返回{'domain':{'namelab':[('id','in',self.patient\u id.namelab.ids)]}}AttributeError:'medical.patient'对象没有属性'namelab',您不需要在更改时使用。在这种情况下,它可以通过域来完成,这将是一个更干净的解决方案。我试图通过域来使用onchange,但没有成功。没有结果。。。认为问题在于订单行(one2many)
if self.patient:
return {'domain':{'namelab':[('id','in',self.patient.namelab.ids)]}}