我有一个电子邮件模板,每当创建新记录时都会发送该模板。这封电子邮件只发送给一个人,因为我在 email_to 字段中只指定了一个电子邮件 ID。
我还为用户创建了一个自定义组。我想通过在创建新记录后反复检查电子邮件 ID 是否存在来向用户组的所有用户发送电子邮件通知。如何从电子邮件模板的 email_to 字段中的用户组中获取用户的电子邮件 ID 并自动发送?
我有一个电子邮件模板,每当创建新记录时都会发送该模板。这封电子邮件只发送给一个人,因为我在 email_to 字段中只指定了一个电子邮件 ID。
我还为用户创建了一个自定义组。我想通过在创建新记录后反复检查电子邮件 ID 是否存在来向用户组的所有用户发送电子邮件通知。如何从电子邮件模板的 email_to 字段中的用户组中获取用户的电子邮件 ID 并自动发送?
在您的邮件模板中
<field name="email_to">${object.get_email_to()}</field>
像这样的python方法
@api.model
def get_email_to(self):
user_group = self.env.ref("res.group_res_user")
email_list = [
usr.partner_id.email for usr in user_group.users if usr.partner_id.email]
return ",".join(email_list)
希望这能很好地满足您的要求..
首先你像这样覆盖你的模型创建方法..
@api.model
def create(self, vals):
res = super(ClassName, self).create(vals)
template = self.env.ref('module_name.template_id')
template.send_mail(res.id, force_send=True)
return res
它将从创建新记录发送邮件。您可以从记录中定义您想要的邮件模板中的 to_email。
首先创建一个字段(根据您更改字段名称):
student_mail=fields.Char(compute="get_email_to")
在声明一个函数之后:
def get_email_to(self):
mail_id= self.env['school.management'].search([])
filter_mail = [i.email for i in mail_id if i.college_id]
self.student_mail=",".join(filter_mail)
result=",".join(filter_mail)
self.student_mail=result.replace('"','')
在 XML 中:
<field name="email_to">${object.student_mail}</field>
就我而言,我根据大学 ID 过滤学生基础......