想問問回合預計單錯誤odoo。即使ive修復它與@ api.one,IAM仍然困惑布特的錯誤,並想知道我可以修復它沒有@ api.one?這裏是我的代碼以@ api.one:預計單錯誤odoo
class overtime_details(models.Model):
_name='overtime.overtime_details'
@api.onchange('employee_id')
@api.one
def attd_check(self):
#import pdb;pdb.set_trace()
for attds in self:
if attds.id:
ov = 0.0
attd = self.env['hr.attendance']
signin = attd.search([('name','=',self.overtime_id.start_date),
('employee_id','=', self.employee_id.id), ('action','=','sign_in')])
signout = attd.search([('name','=',self.overtime_id.end_date),
('employee_id','=',self.employee_id.id), ('action','=','sign_out')])
if signin:
if signout:
ov = self.env['overtime.overtime'].calc_overtime(self.overtime_id.start_date, self.overtime_id.end_date)
else:
ov = 0.0
else:
ov = 0.0
self.ovrtm = ov
nik = fields.Char('NIK', size=250, required=True)
overtime_id = fields.Many2one('overtime.overtime', string="Overtime", ondelete='cascade')
job_id = fields.Many2one('hr.job', string="Position")
employee_id = fields.Many2one('hr.employee', "Employee", required=True, select=True)
ovrtm = fields.Float(compute='attd_check', string='Overtime Hour(s)')
這裏使用odoo 8回溯和IAM:
File "C:\Program Files (x86)\Odoo 8.0\server\.\openerp\fields.py", line 825, i
n __get__
File "C:\Program Files (x86)\Odoo 8.0\server\.\openerp\models.py", line 5323,
in ensure_one
except_orm: ('ValueError', 'Expected singleton: overtime.overtime_details(2,
3, 4)')
IAM一個新手在odoo和Python這是我面臨這樣的第1次錯誤,前
你能提供堆棧跟蹤和odoo的版本嗎? –
@ api.model也可以工作,但你仍然需要一個裝飾.. 更多地瞭解裝飾。參閱下面的鏈接 [方法和裝飾](http://odoo-new-api-guide-line.readthedocs.io/en/latest/decorator.html) –
抱歉,IVE提供回溯錯誤。你們可以檢查它 –