Я настроил smtp с помощью gmail. Когда я использую send_mail, по электронной почте не появляется в учетной записи, получающей электронное письмо.'from_email' не отображается с 'send_mail' smtp
Джанго settings.py
# DEFAULT_FROM_EMAIL = '[email protected]'
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = '[email protected]'
EMAIL_HOST_PASSWORD = '**********'
EMAIL_USE_TLS = True
Использование
$ python manage.py shell
Я посылаю почту следующим образом,
>>> from django.core.mail import send_mail
>>> send_mail('subject is', 'message is and is not 12342', '[email protected]', ['[email protected]'])
1
>>>
Я получаю это сообщение в моем аккаунте GMAIL (который та же учетная запись gmail, используемая для smtp), но из электронной почты отображается как [email protected] и должен быть от Emai [email protected]
Так что эта настройка бесполезна для контактной формы на сайте, так как я никогда не узнаю, от кого почта. Это верно? –
Да, потому что это не одно из предназначенных для использования gsm smtp-серверов. Он предназначен исключительно для того, чтобы люди могли отправлять электронные письма от сторонних почтовых клиентов, таких как телефоны thunderbird и non android. Не предназначено для использования на веб-сайтах. Для этого вам нужно получить сервисы Google Apps. – e4c5
Решение для отображения электронной почты отправителя необходимо добавить. headers = {'Reply-To': contact_email} в опции sendmail. –