2013-01-22 65 views
0

当网站发送电子邮件时,它使用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无法识别的链接。

+0

的docs直接使用'EmailMessage',用于'content_subtype'技巧。这可能是问题吗?它使用EmailMultiAlternatives实际附加2个有效载荷 –

回答

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的”,它应该工作的罚款。

0

它无法点击,因为一些邮件网站将阻止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) 

希望这将工作

相关问题