在创建Exception之后我想重置那个没有发生的字段,因为我尝试了很多替代方案,但它没有价值......例如:
@api.onchange('time_date')
def onchange_date_time(self):
print 'working till now ----------------------------'
if self.time_date:
time_date = datetime.datetime.strptime(self.time_date, "%Y-%m-%d").date()
if time_date<datetime.date.today():
raise except_orm('Error','Please enter the correct date')
self.time_date = None
else:
pass
以上代码我用它来创建一个Exception,当输入日期不是今天在酒店模块中的日期时,time_date指的是入住日期,但是它创建了一个例外但是日期字段没有重置。
答案 0 :(得分:1)
如果您使用onchange(),则可以使用警告而不是例外。
试试这个: -
@api.onchange('time_date')
def _onchange_date_time(self):
if self.time_date:
time_date = datetime.datetime.strptime(self.time_date, "%Y-%m-%d").date()
if time_date<datetime.date.today():
self.time_date = False
return {
'warning': {
'title': "Error",
'message': "Please enter the correct date",
}
}
else:
pass
希望这有帮助。
答案 1 :(得分:1)
试试这个:
return {
'warning': {'title': 'Error!', 'message': 'Please enter the correct date'},
'value': {
'time_date': None,
'flat': None,
}
}