2017-07-21 27 views
2

我创建了一个形式和功能上的一个按钮,我的问题按钮调用我不想写功能的事情,因为我要的是什么,它改变另一场如何停止调用写入功能的按钮?

@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({

+0

当这种方法调用?这很好,如果你能详细说明你的问题 –

回答

2

集字段只读可能会解决您的问题。

如果它的字段不是按钮,那么你可以做如下的事情。

我认为你的要求似乎是一个领域取决于另一个领域的价值。

因此,无论您可以管理@api.onchange方法或者你可以管理@api.depends

@api.onchange('field1') 
def onchange_field1(self): 
    if self.field1 == "value" 
     self.field2 = "Paid" 
    ## add your logic. 

的onchange方法不会触发写方法。

Vals.get v/s vals[]

+0

这是一个按钮而不是字段。我所需要的是,当我点击一个按钮时,字段的值从未支付变为支付 – Borealis

+0

然后这是不可能的,因为如果您要更新任何字段的值,那么它必须调用写入方法。 –

+0

您需要重写写入方法,并且需要添加自定义逻辑以在字段更新时跳过进程。 –