• odoo 二次开发小记不定时更新


    一、odoo中 页面上字段变化引起其他字段范围变化-onchange

    @api.onchange('company_id')
    def onchange_parent_id(self):
        return {
            'domain': {'parent_id': [('company_id', '=', self.company_id.id)]},
        }
    

    二、odoo中 mail.message 的使用

    使用mail.message,分三步走:

     #在表的下面 继承这段话
    _inherit = ['mail.thread']  
    
    # 在字段里面 加上 track_visibility='onchange'   
    department_id = fields.Many2one('hr.department', string='Department',track_visibility='onchange') 
    
    #在xml中写入这段话
     <div class="oe_chatter">
                <field name="message_follower_ids" widget="mail_followers"/>
                <field name="message_ids" widget="mail_thread"/>
            </div>
    

    实现效果如下图

    三、odoo message_post

    tracked_fields = self.env['hr.employee'].fields_get(['company_id','department_id','job_id'])
    
    changes, tracking_value_ids = asset._message_track(tracked_fields, old_values) #old_values修改前的值
    if changes:
       self.env['hr.employee'].message_post(subject=_('Depreciation board modified'), body=self.name, tracking_value_ids=tracking_value_ids)
    

    tracked_fields监测字段,当字段发生变化时,利用message_post发送消息,效果如下:

  • 相关阅读:
    下雪诗
    华视身份证阅读器100UC HTTP模式二次开发
    C# Action 和 Func 区别
    网站部署——文件系统
    前端-JavaScript DOM和BOM
    IO多路复用
    python-协程
    python-线程
    python-进程
    计算机与操作系统简介
  • 原文地址:https://www.cnblogs.com/wanxiangIT/p/10508658.html
Copyright © 2020-2023  润新知