如何阻止按钮调用写入功能?
how can I stop a button from calling the write function?
我在表单和函数上创建了一个按钮,我的问题是按钮调用了我不想要的写入函数,因为我想要的只是它更改另一个字段的值
@api.multi
def write_paid(self):
self.state_money = "paid"
编辑:
我的写法:
@api.multi
def write(self, vals):
Initial=self.Amount
New=vals['Amount_entered']
res=super(Myclass, self).write(vals)
if vals['Amount_entered'] > 0:
vals['Amount_date'] = fields.Datetime.now()
vals['Amount']= Initial + vals['Amount_entered']
res=super(MedicalLab, self).write(vals)
record=self.browse(self.ids[0])
self.env['journal'].create({
Set field readonly might fix your issue.
如果是字段而不是按钮,那么您可以执行如下操作。
我认为您的要求似乎是一个字段取决于另一个字段的值。
所以你可以管理 @api.onchange
方法或者你可以管理 @api.depends
@api.onchange('field1')
def onchange_field1(self):
if self.field1 == "value"
self.field2 = "Paid"
## add your logic.
onchange方法不会触发write方法。
Vals.get v/s vals[]
我在表单和函数上创建了一个按钮,我的问题是按钮调用了我不想要的写入函数,因为我想要的只是它更改另一个字段的值
@api.multi
def write_paid(self):
self.state_money = "paid"
编辑:
我的写法:
@api.multi
def write(self, vals):
Initial=self.Amount
New=vals['Amount_entered']
res=super(Myclass, self).write(vals)
if vals['Amount_entered'] > 0:
vals['Amount_date'] = fields.Datetime.now()
vals['Amount']= Initial + vals['Amount_entered']
res=super(MedicalLab, self).write(vals)
record=self.browse(self.ids[0])
self.env['journal'].create({
Set field readonly might fix your issue.
如果是字段而不是按钮,那么您可以执行如下操作。
我认为您的要求似乎是一个字段取决于另一个字段的值。
所以你可以管理 @api.onchange
方法或者你可以管理 @api.depends
@api.onchange('field1')
def onchange_field1(self):
if self.field1 == "value"
self.field2 = "Paid"
## add your logic.
onchange方法不会触发write方法。
Vals.get v/s vals[]