Рубрики
Без рубрики

Как отправить электронное письмо с помощью SMTP -сервера в Django?

Помните, когда вы подписались на приложение и получили приветственное электронное письмо или однажды забыли свой … с меткой Django, Python, начинающих.

Помните, когда вы подписались на приложение и получили приветственное электронное письмо или однажды забыли свой пароль и получили электронное письмо по ссылке сброса пароля. Эти мелочи добавляет вес к пользовательскому опыту.

В этой статье мы увидим, как отправлять электронные письма нашим пользователям, используя Django Framework и SMTP -сервер. Без траты ни одной минуты давай прыгнут на интересную часть.

Настройка Gmail для Django Mail API:

Чтобы использовать Google SMTP, у вас должна быть учетная запись Gmail. Следующее, что вам нужно, это включить Разрешить меньшую безопасную функцию приложения в соответствии с настройками безопасности учетной записи. Эта функция используется для обеспечения вашей учетной записи Google от приложений, которые менее безопасны для ее использования, чтобы не допустить, чтобы хакеры не смешались в вашу учетную запись.

Настройка sutres.py:

В вашем файле stens.py добавьте следующие конфигурации.

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_USE_TLS = True
EMAIL_PORT = 587
EMAIL_HOST_USER = 'your gmail account'
EMAIL_HOST_PASSWORD = 'your account's password'
EMAIL_USE_SSL = False

Давайте поймем эти терминологии:

Email_backend: В этом настройке указывается бэкэнд, который мы будем использовать для отправки электронной почты в Джанго.

Email_host: Эта настройка состоит в том, чтобы указать поставщика услуг электронной почты.

Email_use_tls: В этом настройке указывается, использует ли электронная почта соединение TLS или нет. Это верно для Gmail.

Email_port: Это настройка по умолчанию для Gmail. Это порт, используемый SMTP -сервером.

Email_host_user: Имя учетной записи электронной почты, которая будет использоваться.

Email_host_password: Пароль учетной записи электронной почты, который будет использоваться.

Email_use_ssl: Неверно для Gmail.

ПРИМЕЧАНИЕ. Здесь виден ваш пароль, поэтому перед тем, как развернуть его, шифровать ваш пароль или поместить в файл или сервер, где есть только доступ.

Настройка Views.py:

Django предоставляет модуль с именем send_mail , что мы будем использовать для отправки электронной почты пользователям. Для Send_Mail доступно много вариантов, но для простоты мы будем использовать только 4 поля.

Тема: Он содержит предмет электронной почты

Сообщение: Он содержит тело электронного письма

email_from: Это почтовый адрес отправителя.

receent_list: Это адрес электронной почты получателя.

from django.core.mail import send_mail
from django.conf import settings

def mail(request):
    ...
    subject = 'your subject'
    message = 'your message'
    email_from = settings.EMAIL_HOST_USER
    recipient_list = ['receiver's mail address', ]
    return render(request,'some_page.html')

Настройка urls.py:

urlpatterns = [
    path('mail', views.mail, name ='mail'),
]

С этим ваш код готов к отправке электронной почты пользователям. Все, что вам нужно сейчас, это запустить сервер и проверить, правильно ли функционируют ваши методы.

Это было для этой статьи. Спасибо за чтение.

Вы можете связаться со мной на Twitter для любых обсуждений.

Адиос.

Оригинал: “https://dev.to/shubhamkshatriya25/how-to-send-email-using-smtp-server-in-django-131f”