2017-10-17 72 views
1

點擊狀態欄中的狀態後,我需要改變狀態,下面是我的例子我還需要添加什麼?odoo中的可點擊狀態欄9

state = fields.Selection([ 
     ('draft', 'New'), 
     ('pending', 'To Renew'), 
     ('close', 'Expired'), 
    ], string='Status', default='draft') 


    @api.multi 
    def set_as_pending(self): 
     return self.write({'state': 'pending'}) 

    @api.multi 
    def set_as_close(self): 
     return self.write({'state': 'close'}) 

.XML

<field name="state" widget="statusbar" clickable="1" /> 
+1

狀態欄中的點擊將已經改變'state',因爲在視圖中它代表了字段(你的xml顯示)。 – CZoellner

+0

@CZoellner Tnx的答案,在我的解決方案後點擊我沒有看到任何改變。我不知道問題在哪裏。 – Pointer

回答

0

的clicable狀態欄和功能之間的鏈路必須是平變化方法。我想你可以添加如下內容:

@api.onchange('state') 
def onchange_state(self): 
    if self.state == 'pending':  
     self.write({'state': 'pending'}) 
    #... your other states 

我希望這對你有所幫助!

+0

不適用於我.. – Pointer

+0

至少它到達交換? – Dayana