我想通过点击动作按钮
按日期填写字段class sale_inheritd(models.Model):
_inherit = 'sale.order'
@api.multi
def action_sale_temporary(self):
for order in self:
self.env['project.project'].search([('project_id', '=', 'related_project_id')]).write({'temporary_reception_date':datetime.date.today()})
order.write({'state': 'temporary'})
这个功能有什么问题?
答案 0 :(得分:2)
我不了解您传递给搜索方法的域名,但是如果您想要填写类型为Date的字段:
.write({'temporary_reception_date':fields.Date.today()})
和日期时间字段:
.write({'temporary_reception_date':fields.Datetime.now()})
注意:并且不要使用self
来访问循环exm中的字段:self.related_project_id
使用order.related_project_id
代替,或者您很可能会有Singleton
错误
编辑:正如@CZoellner所说的fields.Date.context_today(self)
更好,因为这可以防止用户时区出现问题
答案 1 :(得分:1)
从你的问题来看,目前尚不清楚你想要完成什么。
您搜索project_id[looks like many2one field]
的搜索方法等于字符串。
如果它是many2one字段,则传递id以获得正确的结果。
另外,请确保self.env['project.project'].search([('project_id', '=', 'related_project_id')])
仅返回单个记录,否则会导致单例错误。
如果搜索方法只返回一条记录,那么写入记录就没有问题了。