Передача уникальной переменной при отправке электронной почты с 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
Однако, это не уникально, и каждый лидер получает то же самое.
Любая идея о том, как я могу это сделать? Спасибо
1 ответ
Если у вас есть содержимое электронной почты, относящееся к каждому объекту, вам придется отправлять электронные письма отдельно, а не навалом. Так что вам просто нужно включить код электронной почты в ваш цикл;
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()