上下文键:
这些上下文密钥可用于在调用create()或write()(或任何其他可能有用的方法)期间控制mail.thread功能,如自动订阅或字段跟踪。
- mail_create_nosubscribe: 在create或message_post,不要将当前用户订阅到记录线程
- mail_create_nolog: 在创建时,不要自动记录“ created”消息
- mail_notrack: 在创建和写入时,不要执行值跟踪创建消息
- tracking_disable: 在创建和写入时,不执行MailThread功能(自动订阅,跟踪,发布,…)
- mail_auto_delete: 自动删除邮件通知;默认为True
- mail_notify_force_send: 如果发送的电子邮件通知少于50个,则直接发送而不是使用队列;默认为True
- mail_notify_user_signature: 在电子邮件通知中添加当前用户签名;默认为True
**e.g.**在使用odoo开发中,比如对采购订单进行二开时,我们可能不需要odoo的邮件功能,并且觉得创建和修改时邮件模块影响效率,不想使用这个功能,那么我们就可以在context中加入一些参数以阻止或关闭该邮件功能。如:‘self.with_context(tracking_disable=True)’
@api.model
def create(self, vals):
# 去除创建和更新时创建mail_thread的逻辑
self = self.with_context(tracking_disable=True)
res = super(HrpPurchaseOrder, self).create(vals)
return res
@api.multi
def write(self, vals):
# 去除创建和更新时创建mail_thread的逻辑
self = self.with_context(tracking_disable=True)
res = super(HrpPurchaseOrder, self).write(vals)
return res
这样设置之后就可以实现该效果了。
对于其他的参数值来说,也是同样的道理。