微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将日期添加到日期时间并将其转换为日期? - Odoo V14

如何解决将日期添加到日期时间并将其转换为日期? - Odoo V14

我想向日期时间字段添加 30 天,并使我的日期字段将此值作为认值。

我试过了,但不起作用:/


from odoo import models,fields,api
from datetime import datetime
from dateutil.relativedelta import relativedelta

class crm_lead(models.Model):
    _inherit = 'crm.lead'
    
    date_deadline = fields.Datetime(string='Fermeture prévue')
    
    @api.onchange('create_date')
    def _onchange_enddate(self):
        if self.create_date:
            date_end = ( datetime.strptime(self.create_date,'%Y-%m-%d') + relativedelta(days =+ 30).strftime('%Y-%m-%d') )
            self.date_deadline = date_end.date()

提前致谢!

解决方法

这行得通吗?:

import 'leaflet';

它给出当前日期 + 30 天。

它不会剥离 datetime 变量,因此您可能希望在之后执行此操作。

,

create_date 是在 magic field 方法中设置的 _create。要将创建日期用作 date_deadline 字段的默认值,您可以使用 default 属性并使用 Date.today 函数获取创建日期。

示例:

date_deadline = fields.Datetime(default=lambda record: fields.Date.today() + relativedelta(days=30))

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。