如何发送电子邮件没有邮件模板odoo 9
问题描述:
我想在odoo 9没有任何电子邮件模板发送电子邮件。我已经设置成功传出&传入邮件配置。 我的方案是在管理邮件别名电子邮件 的发送者,这是我的模型:如何发送电子邮件没有邮件模板odoo 9
class cashadvance(osv.osv):
_name = 'comben.cashadvance'
_order = 'create_date DESC'
_columns = {
'user_target' : fields.many2one('res.users', string='User Target'),
'mail_target' : fields.char(string='Email Target'),
}
的问题是,如何发送电子邮件使用功能mail_target场? 请帮助我
答
您可以使用mail.thread
型号直接发送邮件,方法是使用附在按钮上的以下代码。
@api.multi
def send_mail(self):
user_id = self.user_target.id
body = self.message_target
mail_details = {'subject': "Message subject",
'body': body,
'partner_ids': [(user_target)]
}
mail = self.env['mail.thread']
mail.message_post(type="notification", subtype="mt_comment", **mail_details)
或者,你可以通过喇叭拿公牛和标准库中使用纯醇smtplib
,(但那么你odoo配置将不再重要)。这个例子假设你使用的是Gmail。如果您不是,那么您必须填写邮件服务器的详细信息才能正常工作。
@api.multi
def send_mail(self):
import smtplib
receivers_email = self.user_target.login
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login("your_email_address", "password")
message = self.message_target
server.sendmail("your_email_address", receivers_email, message)
server.quit()
由于user_target
是关系到res.users
场可以从login
领域获得的电子邮件
HII @danidee,感谢您的快速答案,对不起我的反应迟缓。最后我选择smtplib来解决错误,并且它解决了机构,非常感谢你。 但我想知道如何在server.sendmail中添加邮件主题。我尝试在server.sendmail中添加参数主题(“your_email_address”,receivers_email,主题,消息),但没有成功 – yogakumboro
'message =“Subject:%s \ n \ n%s”%('Your subject', self.message_target)' – danidee