所以我在我的web应用程序中有一个表单,我试图从用户那里收集反馈。该表格由主题,电子邮件和内容组成,我希望将电子邮件发送到我的帐户。我对此有很多验证和理解麻烦。我的代码在下面,我会在以后进一步解释我的问题。Python /电子邮件 - 如何通过send_email接收用户反馈?
Settings.py
EMAIL_HOST_USER
和EMAIL_HOST_PASSWORD
充满我的应用程序。
EMAIL_BACKEND = "django.core.mail.backends.smtp.EmailBackend"
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = '#'
EMAIL_HOST_PASSWORD = '#'
EMAIL_USE_TLS = True
EMAIL_USE_SSL = False
Forms.py
class Contact(forms.Form):
subject = forms.CharField(required=True)
content = forms.CharField(widget=forms.Textarea)
email = forms.EmailField(required=True)
Views.py
def about(request):
if request.method == 'GET':
form = Contact()
else:
form = Contact(request.POST)
if form.is_valid():
subject = form.cleaned_data['subject']
content = form.cleaned_data['content']
email = ['[email protected]']
#try:
server = smtplib.SMTP('smtp.gmail.com:587')
server.starttls()
server.login(settings.EMAIL_HOST_USER, settings.EMAIL_HOST_PASSWORD)
server.sendmail(email, email, content)
server.quit()
print "Successfully sent email"
#except SMTPException:
print "Error: unable to send email"
所以我有点困惑,我如何能够从用户发送一封电子邮件帐户矿因为我必须让用户登录,所以我正在尝试从我的帐户发送一封电子邮件到我的帐户,然后我只是将用户电子邮件附加到内容中。然而,这也不起作用。
一,是发送电子邮件给自己一个愚蠢的做法吗?
另外,关于代码问题,我不断收到验证错误,谷歌说我应该设置双向验证。这是我应该做的吗?
有人可以给我一些想法,我应该去哪里?谢谢。
通过gmail发送东西有点奇怪。看看这个其他SO问题:http://stackoverflow.com/questions/25944883/how-to-send-an-email-through-gmail-without-enabling-insecure-access – spectras
使用从mailgun.com或类似的SMTP服务器服务。每月可免费发送10000封邮件。 – Lucas03