通过Django电子邮件发送链接时无法点击

时间:2013-01-22 00:18:57

标签: django email gmail

当网站发送电子邮件时,它会使用a标记来创建链接。出于某种原因,gmail(可能还有其他电子邮件)不会将a标记包含的文本转换为链接。

发送电子邮件的功能:

def send_main(to, sbj, msg):
    msg = EmailMultiAlternatives(sbj, msg, '********@gmail.com', to)
    msg.content_subtype = "html"
    msg.send()

参赛者在shell中传递给电子邮件

send_main(['****@gmail.com'], 'test', '<a href="http://www.google.com"/>test</a>')

然而,当我在python shell中执行该行时,它会发送电子邮件但gmail无法识别该链接。

2 个答案:

答案 0 :(得分:1)

使用此方法:

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”,它应该可以正常工作。

答案 1 :(得分:0)

它不可点击,因为某些邮件站点会阻止href,但这可以在gmail中使用 并使链接可在这些网站中点击使用send_mail

from django.core.mail import send_mail

send_mail('Subject', 'http://www.google.com', 'from@example.com',
['to@example.com'], fail_silently=False)

希望这会有用