使用 Django 发送电子邮件时传递唯一变量
Passing Unique Variable when Sending E-Mail with Django
在我的 Django 项目中,我有 leads
属于 organization
。我的观点之一是按组织过滤这些线索,然后通过电子邮件向他们发送消息。此消息采用 html 模板的形式。
目前我是这样做的:
# FIRST: get a list of all the emails
leads_email = []
leads = Lead.objects.filter(organization=organization)
for lead in leads:
if lead.email != None:
leads_email.append(lead.email)
# SECOND: Django email functions
msg = EmailMessage(subject,
get_template('email_templates/campaign_email.html').render(
{
'message': message,
}
),
from_email,
bcc=to_list)
msg.content_subtype = "html"
msg.send()
但是每个 lead
都有一个与之关联的唯一代码,该字段位于 lead.code
下。我想在电子邮件中包含此代码。
例如,如果 test@mail.com 的唯一代码是 "test123",那么我想将其包含在单独发送给 test@mail.com 的电子邮件中。我目前通过传递一个名为 message
的变量来执行此操作,但这不是唯一的,每个潜在客户都会得到相同的东西。
知道如何实现吗?谢谢
如果您有特定于每个对象的电子邮件内容,则必须单独而不是批量发送电子邮件。所以你只需要在你的循环中包含电子邮件代码;
leads = Lead.objects.filter(organization=organization)
for lead in leads:
if lead.email != None:
msg = EmailMessage(
subject,
get_template('email_templates/campaign_email.html').render(
{
'message': message,
'code': lead.code
}
),
from_email,
[lead.email, ]
)
msg.content_subtype = "html"
msg.send()
在我的 Django 项目中,我有 leads
属于 organization
。我的观点之一是按组织过滤这些线索,然后通过电子邮件向他们发送消息。此消息采用 html 模板的形式。
目前我是这样做的:
# FIRST: get a list of all the emails
leads_email = []
leads = Lead.objects.filter(organization=organization)
for lead in leads:
if lead.email != None:
leads_email.append(lead.email)
# SECOND: Django email functions
msg = EmailMessage(subject,
get_template('email_templates/campaign_email.html').render(
{
'message': message,
}
),
from_email,
bcc=to_list)
msg.content_subtype = "html"
msg.send()
但是每个 lead
都有一个与之关联的唯一代码,该字段位于 lead.code
下。我想在电子邮件中包含此代码。
例如,如果 test@mail.com 的唯一代码是 "test123",那么我想将其包含在单独发送给 test@mail.com 的电子邮件中。我目前通过传递一个名为 message
的变量来执行此操作,但这不是唯一的,每个潜在客户都会得到相同的东西。
知道如何实现吗?谢谢
如果您有特定于每个对象的电子邮件内容,则必须单独而不是批量发送电子邮件。所以你只需要在你的循环中包含电子邮件代码;
leads = Lead.objects.filter(organization=organization)
for lead in leads:
if lead.email != None:
msg = EmailMessage(
subject,
get_template('email_templates/campaign_email.html').render(
{
'message': message,
'code': lead.code
}
),
from_email,
[lead.email, ]
)
msg.content_subtype = "html"
msg.send()