当用户输入0应显示您已在特定板中输入0时,如何保持对odoo 8的警报

2024-04-30 00:38:13 发布

您现在位置:Python中文网/ 问答频道 /正文

当用户输入0时,应显示您已在特定板中输入0作为弹出窗口,当单击“确定”时,记录应br当前保存。我收到警告,在更改0之前不会保存

"

def create(self, cr, uid, vals, context=None):
        accruemonth = {'accrue_jan': 'January', 'accrue_feb': 'February', 
          'accrue_mar':'March','accrue_apr': 'April','accrue_may': 'May', 
          'accrue_june': 'June','accrue_july': 'July','accrue_aug': 
          'August', 'accrue_sep':     
   'September','accrue_oct':'October','accrue_nov':'November''accrue_dec': 
           'December', }
        for key, value in accruemonth.items():
            if 'accrue_slab' in vals and vals['accrue_slab'] == 'monthly' 
                and key in vals and vals[key] < 0.01:
                 raise osv.except_osv(_('Alert!'),
                                     _("%s slab is 0 or empty", )%(value))                

" 我想在用户输入小于0.01时保存记录,方法是显示警报并单击弹出窗口上的“确定”按钮,然后单击“保存”按钮。现在应保存记录。我收到弹出窗口警告,在我们将值更改为大于0.01之前,不允许保存记录


Tags: andkey用户inbr警告valuedef
1条回答
网友
1楼 · 发布于 2024-04-30 00:38:13

斯雷

为此,您必须使用onchange方法,并从那里开始raise处理warning消息。 示例:

def onchange_slab(self, cr, uid, ids, context=None):
    if 'Your_Field' < 0:
        return {'warning': {
            'title': _('Warning!'),
            'message': _("slab is 0 or empty")
            }
        }
    return {}

相关问题 更多 >