我有一个场景,我需要在特殊请求类型下分配叶子,如果总可用叶子是ZERO。我发现有一个约束定义了计算可用叶子的数量,并使用" check_holidays"功能。如何覆盖此功能,以构建我的逻辑..
我在自定义广告中尝试了一些示例,但没有任何正面的内容。
这是我的实施:
class my_leave(osv.osv):
_inherit:hr.holidays
_check_holidays = lambda self, cr, uid, ids, context=None: self.check_holidays(cr, uid, ids)
_constraints = [
(_check_holidays, "You don't have sufficient leaves to apply. please contact your manager to allocate leaves")
]
def check_holidays(self, cr, uid, ids,methodname):
raise Warning("OverRidden Method invoked")
my_leave()
答案 0 :(得分:0)
要重新定义python约束,可以通过设置相同的方法函数名称来覆盖它:
在模块中:
class mrp_bom(orm.Model):
_inherit = 'mrp.bom'
def _check_product(self, cr, uid, ids, context=None):
return True
_constraints = [(_check_product, 'Override of _check_product constraint', ['product_id'])]
(复制)