Python 2.7 Python约束(错误)消息

Python 2.7 Python约束(错误)消息,python-2.7,constraints,openerp-7,Python 2.7,Constraints,Openerp 7,我已经用Python编写了如下函数。工作原理类似于如果用户正确选择假日开始日期和假日结束日期以及它将接受的时间,否则它将显示一条错误消息,如“错误:输入的无效日期或时间”,如图所示 Python代码: def _date_start_end_validate(self, cr, uid, ids, context=None): sr_ids = self.search(cr, 1 ,[], context=context) for self_obj in self

我已经用Python编写了如下函数。工作原理类似于如果用户正确选择假日开始日期和假日结束日期以及它将接受的时间,否则它将显示一条错误消息,如“错误:输入的无效日期或时间”,如图所示

Python代码:

def _date_start_end_validate(self, cr, uid, ids, context=None):
        sr_ids = self.search(cr, 1 ,[], context=context)
        for self_obj in self.browse(cr, uid, ids, context=context):
            if self_obj.date_start >= self_obj.date_end:
                return False
        return True

_constraints = [(_date_start_end_validate, 'Error: Entered Invalid Date or Time', ['Dates'])]
我需要在这里显示哪个开始日期显示错误,应该显示那个日期


如何在约束中获取开始日期信息。

它正在工作,我定义:

for self_obj in self.browse(cr, uid, ids, context=context):
            xcv = self_obj['description']
            if self_obj.date_start >= self_obj.date_end:
                raise osv.except_osv(_('Error:'),_('Entered Invalid Date/Time: %s')%(xcv))
        return True

现在可以正常工作。

尝试下面的代码,可能会被完全使用

定义日期开始结束验证(self、cr、uid、id、context=None):

定义检查消息和开始日期(self、cr、uid、id、context):

_约束=[

(_date_start_end_validate, lambda self, *a, **kw: self._check_msg_with_start_date(*a, **kw), ['date_start','date_end'])
]

谢谢和问候

安基特·甘地

data = self.browse(cr, uid, ids, context=context)

return "Error: Entered Invalid Date or Time {} ".format(data.date_start)
(_date_start_end_validate, lambda self, *a, **kw: self._check_msg_with_start_date(*a, **kw), ['date_start','date_end'])