我想使用Django模板发送HTML电子邮件:
<html>
<body>
hello <strong>{{username}}</strong>
your account activated.
<img src="mysite.com/logo.gif" />
</body>
我找不到任何有关的信息send_mail
,而django-mailer仅发送HTML模板,而没有动态数据。
如何使用Django的模板引擎生成电子邮件?
从docs,要发送HTML电子邮件,你想使用其他内容类型,如下所示:
from django.core.mail import EmailMultiAlternatives
subject, from_email, to = 'hello', 'from@example.com', 'to@example.com'
text_content = 'This is an important message.'
html_content = '<p>This is an <strong>important</strong> message.</p>'
msg = EmailMultiAlternatives(subject, text_content, from_email, [to])
msg.attach_alternative(html_content, "text/html")
msg.send()
你可能需要两个用于电子邮件的模板-一个看起来像这样的纯文本模板,存储在你的模板目录下email.txt
:
Hello {{ username }} - your account is activated.
还有一个HTMLy,存放在以下位置email.html
:
Hello <strong>{{ username }}</strong> - your account is activated.
然后,你可以使用来使用这两个模板发送电子邮件get_template,如下所示:
from django.core.mail import EmailMultiAlternatives
from django.template.loader import get_template
from django.template import Context
plaintext = get_template('email.txt')
htmly = get_template('email.html')
d = Context({ 'username': username })
subject, from_email, to = 'hello', 'from@example.com', 'to@example.com'
text_content = plaintext.render(d)
html_content = htmly.render(d)
msg = EmailMultiAlternatives(subject, text_content, from_email, [to])
msg.attach_alternative(html_content, "text/html")
msg.send()
问题内容: 我希望django通过电子邮件而非用户名对用户进行身份验证。一种方法是提供电子邮件值作为用户名值,但我不希望这样。原因是,我有一个,所以我不能有一个。 另一个原因是所有电子邮件都是唯一的,但有时用户名已被使用。因此,我将自动创建用户名为。 我该如何更改才能让Django通过电子邮件进行身份验证? 这就是我创建用户的方式。 这就是我的登录方式。 除了先获取用户名外,登录还有其他方法吗?
我希望django通过电子邮件而不是用户名来验证用户。一种方法是提供电子邮件值作为用户名值,但我不希望这样。原因是,我有一个url
问题内容: 在我的Web应用程序中,我偶尔会使用可重复使用的邮件发送器应用程序发送电子邮件,如下所示: 我想发送一封带有嵌入式图像的电子邮件,因此我尝试在邮件客户端中制作邮件,查看源并将其放入模板(welcome.eml)中,但是我一直无法获取它来呈现发送时在邮件客户端中正确显示。 有谁知道我有一种简单的方法来创建带有内嵌图像的mime编码的邮件模板,这些模板在我发送邮件时会正确呈现? 问题答案:
我有一个使用commons电子邮件的项目(http://search.maven.org/#artifactdetails|组织。阿帕奇。commons | commons电子邮件| 1.2 | jar)通过maven发送。我想使用电子邮件模拟类(http://commons.apache.org/email/testapidocs/org/apache/commons/mail/mocks/Mo
问题内容: 有人知道该怎么做吗?我收到了电子邮件的所有信息(正文,主题,从,到,抄送,密件抄送),并且需要从中生成一个.eml文件。 问题答案: 您可以构造对象(或已经从邮件服务器构造它),然后可以使用方法将其保存到文件。有关更多信息,请参见JavaMail API 。
我收到的消息是MimeMessage类型的。 假设我现在收到了一封新的电子邮件(X) 我想创建一个新的MimeMessage(Y),在它的正文中,它会说这封电子邮件是对(X)的响应(回复) p.s(Y)消息稍后将从不同的SMTP url发送,因此X和Y不相关。 多谢了。