Openerp Python,odoov10
在“贷款”模块中检查重复员工时出现以下错误 “InternalError”:当前事务中止,在事务块结束之前忽略命令 以下是我的代码:Openerp Python,odoov10,openerp,Openerp,在“贷款”模块中检查重复员工时出现以下错误 “InternalError”:当前事务中止,在事务块结束之前忽略命令 以下是我的代码: @api.multi def _check_duplicate_employee(self): employee_loan_ids=self.search([('state','=',"approved"),('id','!=','ids')]) loan_employee=[] for emp_ids in self(employee
@api.multi
def _check_duplicate_employee(self):
employee_loan_ids=self.search([('state','=',"approved"),('id','!=','ids')])
loan_employee=[]
for emp_ids in self(employee_loan_ids):
loan_employee.append(emp_ids.employee_id.id)
if self.state == "approved" and self.employee_id.id in loan_employee:
return False
return True
_constraints = [
(_check_duplicate_employee, 'One of the loan of this employee is already approved ', ['employee_id']),
]
我注意到:
员工贷款ID已经是记录集,因此您不需要使用self(员工贷款ID)
如果翻译了self.state
,您也需要翻译“approved”
for emp_ids in employee_loan_ids: