【问题标题】:Take long time to send a mail - odoo 8发送邮件需要很长时间 - odoo 8
【发布时间】:2016-10-25 11:11:15
【问题描述】:

我正在使用以下代码访问电子邮件模板并发送邮件。它工作正常,只是在执行代码后需要很长时间(30 到 60 分钟) 来发送邮件。我不知道如何解决这个问题?建议任何解决方案!谢谢。

sen_mail.py

@api.multi
def send_email(self,invoice_id):
     invoice_data = self.env['account.invoice'].browse(invoice_id)
     email_template_obj = self.env['email.template']
     template_id = self.env.ref('multi_db.email_template_subscription_invoice', False)
     if template_id:
        values = email_template_obj.generate_email(template_id.id,invoice_id)
        values['subject'] = 'Invoice for AMS registration'
        values['email_to'] = invoice_data.partner_id.email
        values['partner_to'] = invoice_data.partner_id
     mail_obj = self.env['mail.mail']
     msg_id = mail_obj.create(values)
     if msg_id:
         mail_obj.send([msg_id])
     return True

【问题讨论】:

    标签: email time openerp odoo-8


    【解决方案1】:

    终于解决了。 我在设置 -> 技术 -> 自动化 -> 计划操作中更改了 Interval NumberInterval Unit

    【讨论】:

    • 请提供更多详细信息。
    【解决方案2】:

    卡比尔

    是的,您可以提高电子邮件频率以更快地从外发电子邮件队列中发送电子邮件,但如果您想立即发送电子邮件而无需等待,那么您也可以使用以下代码:

    @api.multi
    def send_email(self,invoice_id):
        invoice_data = self.env['account.invoice'].browse(invoice_id)
        email_template_obj = self.env['email.template']
        template_id = self.env.ref('multi_db.email_template_subscription_invoice', False)
        if template_id:
             template_id.send_mail(invoice_id, force_send=False, raise_exception=False)
        return True
    

    这将发送电子邮件而无需等待。

    最佳

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-17
      • 1970-01-01
      • 2017-05-19
      • 1970-01-01
      相关资源
      最近更新 更多