问题描述
我开发了一个Cron,以便当一个任务的date_deadline等于今天时,该任务的负责用户将收到一封电子邮件。
该功能仍处于基本状态,因为它正在测试中。
class ProjectTasks(models.Model):
_inherit = 'project.task'
@api.multi
def send_email(self):
print('Executing CRON')
today = date.today()
tasks = self.env['project.task'].search([('date_deadline','=',today)])
body = 'Reminder,your task %s is going to expire today' % (tasks.name)
subject = 'Reminder Task Expire Today'
email_from = self.env['ir.mail_server'].search([('id',1)])
email_to = tasks.user_id.email
values = {
'res_id' : 1,'email_from' : email_from.smtp_user,'email_to' : email_to,'auto_delete' : False,'model' : 'project.task','body' : body,'subject' : subject,}
send_mail = self.env['mail.mail'].sudo().create(values)
send_mail.send()
我的XML是:
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data>
<record id="ir_send_mail_task" model="ir.cron">
<field name="name">Recordatorio Vencimiento Tarea</field>
<field name="active">True</field>
<field name="interval_number">1</field>
<field name="interval_type">days</field>
<field name="numbercall">-1</field>
<field name="model_id" ref="model_project_task"/>
<field name="state">code</field>
<field name="code">model.send_email()</field>
</record>
</data>
</odoo>
解决方法
尝试更改您的身体标签。
values = {
'res_id' : 1,'email_from' : email_from.smtp_user,'email_to' : email_to,'auto_delete' : False,'model' : 'project.task','body_html' : body,'subject' : subject,}