通过Django电子邮件发送时链接不可点击
问题描述:
当网站发送电子邮件时,它使用a
标签创建链接。出于某种原因,gmail(可能的其他电子邮件)也不会将a
标签包含的文本转换为链接。通过Django电子邮件发送时链接不可点击
功能用于发送电子邮件:
def send_main(to, sbj, msg):
msg = EmailMultiAlternatives(sbj, msg, '********@gmail.com', to)
msg.content_subtype = "html"
msg.send()
PARAMATERS通过在外壳
send_main(['****@gmail.com'], 'test', '<a href="http://www.google.com"/>test</a>')
,当我在Python shell中执行行至电子邮件了,它发出的电子邮件,但Gmail无法识别的链接。
答
使用此方法:
html_content = render_to_string('emails/email_%s.html' % template_name, { parmas })
message = EmailMultiAlternatives(subject, html_content, settings.GENERIC_EMAIL_SENDER,[email])
message.attach_alternative(html_content, 'text/html')
message.send()
将它传递到一个HTML模板,并呼吁render_to_string - 确保附件是“text/html的”,它应该工作的罚款。
答
它无法点击,因为一些邮件网站将阻止HREF,但是这将在Gmail中 工作,使链接点击这些网站使用send_mail代替
from django.core.mail import send_mail
send_mail('Subject', 'http://www.google.com', '[email protected]',
['[email protected]'], fail_silently=False)
希望这将工作
的docs直接使用'EmailMessage',用于'content_subtype'技巧。这可能是问题吗?它使用EmailMultiAlternatives实际附加2个有效载荷 –