创建客户时设置字段

Setting fields when making customer

我正在尝试做到这一点,以便每当我创建客户但未输入日期时,它都会发出警告并自动将日期设置为今天。

目前我有这个,但它没有按预期工作:

def create(self, cr, uid, vals, context=None):
    if not vals.get('date'):
        vals.update({'date': fields.date.context_today})
        raise osv.except_osv(_('Warning!'), _('No date entered, default date set'))
    return super(res_partner, self).create(cr, uid, vals, context=context)

我做错了什么?

提前致谢

如果用户不会select更新当前日期的日期,我认为没有必要发出警告。

每当 raise 被触发时,流程就会停止,所以最好避免它。下面的代码很好。

def create(self, cr, uid, vals, context=None):
    if not vals.get('date'):
        vals.update({'date': fields.date.context_today})
    return super(res_partner, self).create(cr, uid, vals, context=context)