zoukankan      html  css  js  c++  java
  • Odoo14学习笔记(5) 通过onchange机制自动计算“工龄”

    第一步:引用日期处理方法:

    from datetime import datetime
    from dateutil.relativedelta import relativedelta

    第二步:添加onchange方法:

    @api.onchange("workDate")
    def _onchange_work_date(self):
      for rec in self:
        if rec.workDate:
          rec.workAge = relativedelta(dt1=datetime.today(), dt2=rec.workDate).years + 1

    注:多字段时onchange中逗号分隔即可,如 :

    @api.onchange("columnName1","columnName2", "columnName3", ...)
    def _onchange_work_date(self):
      for rec in self:
        if rec.workDate:
          rec.workAge = relativedelta(dt1=datetime.today(), dt2=rec.workDate).years + 1

     如果需要提示信息,如:

    @api.onchange("workDate")
    def _onchange_work_date(self):
      for rec in self:
        if rec.workDate:
          rec.workAge = relativedelta(dt1=datetime.today(), dt2=rec.workDate).years + 1
    
          return {
            'warning':{
            'title': u'错误信息标题',
            'message': u'错误详情'
           }
          }
  • 相关阅读:
    Java EE企业应用发展
    黄金点游戏
    C++ Word Count 发布程序
    C++原创应用类库和工具类库
    软件之魂
    latex表格multirow的使用
    web service和ejb的区别
    RPC
    hashcode()和equals()方法
    JSON
  • 原文地址:https://www.cnblogs.com/61007257Steven/p/15076009.html
Copyright © 2011-2022 走看看