Python 在django视图中发送邮件会导致NameError
试图在django视图内发送邮件Python 在django视图中发送邮件会导致NameError,python,django,django-views,sendmail,Python,Django,Django Views,Sendmail,试图在django视图内发送邮件 from django.core.mail import send_mail # Snippet inside a view for ml in mls: try: l = Letter.objects.get(pk = ml.message_key) except Exception as e: mail_txt = _("sending mail failed " + str(e) + " " + str(
from django.core.mail import send_mail
# Snippet inside a view
for ml in mls:
try:
l = Letter.objects.get(pk = ml.message_key)
except Exception as e:
mail_txt = _("sending mail failed " + str(e) + " " + str(ml.activity_org) + " " + str(ml.scheduled_time))
send_mail(mail_txt, "sending mail", "user@domain.com", ["sender@domain.com"], fail_silently=False)
错误
NameError: global name 'send_mail' is not defined
我建议您使用
EmailMultiAlternations
。我使用这个,很容易配置和使用。
例如:
将其添加到Settings.py
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_USER = 'yourmail@gmail.com'
EMAIL_HOST_PASSWORD = 'yourpass'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
如果使用不同的邮件服务器,请更改显示的数据
功能示例
from django.core.mail import EmailMultiAlternatives
title = 'Test Email'
message_text = 'Test email message'
#email_to has to be a list, even if you're sending mail only to 1 address
mail = EmailMultiAlternatives(title, message_text, 'from@email.com', ['email_to1'])
mail.send()
您可以附加文件或html代码。。。更多信息请访问
希望有帮助 请提供完整的回溯。您没有正确导入发送电子邮件。您是否在
视图.py中导入它?您使用的是什么版本的django?很抱歉,在另一个文件中没有定义“发送邮件”这一问题。