发电子邮件不在Django工作?

2024-06-01 05:54:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我写了一份通过django发送邮件的申请

在模型.py在

from django.db import models

from django import forms

class EmailForm(forms.Form):

      firstname = forms.CharField(max_length=255)

      lastname = forms.CharField(max_length=255)

      email = forms.EmailField()

      subject = forms.CharField(max_length=255)

      botcheck = forms.CharField(max_length=5)

      message = forms.CharField()

在视图.py在

^{pr2}$

EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'

它显示在控制台中。在

但是当

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'

它不向指定的用户发送电子邮件。 我的设置.py文件

EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'

EMAIL_USE_TLS   = True
EMAIL_HOST      =  'localhost'

EMAIL_PORT      = '8000'

我如何发送电子邮件?在


Tags: djangofrompycoreimportbackendemailmail
1条回答
网友
1楼 · 发布于 2024-06-01 05:54:13

您已将电子邮件主机指定为localhost,请将其更改为gmail等可靠的电子邮件主机。你的设置.py可以使用下面给定的设置使用gmail smtp服务器发送电子邮件。你也得换个港口。在

EMAIL_USE_TLS = True 
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = 'username@gmail.com'
EMAIL_HOST_PASSWORD = 'password'

如果问题仍然存在,您必须允许less secure apps访问您的gmail帐户。这是gmail最近对其帐户访问策略所做的更改。默认情况下,只有限定域可以使用gmail身份验证(OAUTH2)机制发送电子邮件。要允许不太安全的应用程序访问你的gmail帐户,你必须登录到google开发者控制台。在

相关问题 更多 >