2017-07-10 45 views

回答

2

您可以使用简单的方法。

例:

class sale_order(models.Model): 
    _inherit="sale.order" 

    @api.model 
    def create(self,vals): 
     res=super(sale_order,self.with_context('mail_create_nosubscribe':True)).create(vals) 
     return res 

如果传递mail_create_nosubscribe真的背景下,系统将不会在消息中添加默认的追随者。

Odoo在邮件消息上下文中主要支持三种类型的关键字,使用该功能可以启用/禁用模型明智的过程。

1.tracking_disable:在创建并写入,执行不MailThread功能(自动订阅,跟踪后,...)

2.mail_create_nosubscribe:在创建或message_post,做不订阅 UID的纪录线程

3.mail_create_nolog:在创造,不用登录自动“ 创建”消息

您只需在上下文中传递值,系统将禁用上述功能中的 。

这可能会帮助你。

0

没有足够的声望发布此评论,所以它必须是一个答案,对不起。

你的回答让我对自己的方式感到满意,我改变了一些代码以使它适合我。

class sale_order(models.Model): 
    _inherit="sale.order" 
    @api.model 
     def create(self, vals):  
      res = super(sale_order, self.with_context(mail_create_nosubscribe=True)).create(vals) 

此外,我注意到合作伙伴仍然在订单确认后添加。 我决定,用下面的代码:

@api.multi 
    def action_confirm(self): 

     return_value = super(sale_order, self.with_context(mail_create_nosubscribe=True)).action_confirm() 

     for follower in self['message_follower_ids']: 
      follower.unlink() 

     return return_value