跳至内容
菜单
此问题已终结
2 回复
23905 查看

In order to change the state of a record from draft to confirm depending on its own given date... in model after importing datetime, date:

date = fields.Date('Date', default=lambda * a: time.strftime('%Y-%m-%d'))
state = fields.Selection([('draft', 'Draft'), ('confirm', 'Confirm')], readonly=True, default='draft')

method:

@api.multi
def confirm_record(self):
current_date = str(datetime.now().date())
self.search(['date', '==', current_date]).write({'state': 'confirm'}):
return True
     

this metod is call by an automated action (ir.cron) and log file says:

ValueError: Invalid leaf date.

Odoo 10

形象
丢弃

Is it necesary to format current_date string?

最佳答案

Hi 

The syntax of search method is wrong.

change this line

self.search([('date', '=', current_date)]).write({'state': 'confirm'})
形象
丢弃
相关帖文 回复 查看 活动
1
9月 19
13265
2
7月 25
4776
3
6月 25
1011
2
12月 24
7882
2
11月 24
28675