Как отправлять электронную почту в веб-приложении на Django

Рассказывает yasoob008


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

В этом руководстве мы будем использовать Gmail.

Создание проекта

Для начала создадим проект Django. Введем следующую команду в терминале:

Теперь переместимся в папку с новым проектом:

Создание нового приложения

Теперь нам необходимо создать новое приложение. Запустим следующую команду, которая создаст папку send_email с несколькими файлами внутри нашего проекта:

Изменение настроек проекта

Теперь немного изменим настройки проекта. Мы добавим наше приложение и всю информацию, связанную с рассылкой писем в файл settings.py. Добавим следующие данные:

В разделе файла INSTALLED_APPS необходимо добавить следующую строку в список:

Теперь наш файл настроек должен содержать следующий список:

Также добавим туда следующий код:

Создание URL

Изменим файл urls.py в папке gci_email:

Теперь создадим файл urls.py в папке send_email и добавим туда следующий код:

Добавление файлов отображения

Нам необходимо изменить файл views.py в папке send_email:

Добавление шаблонов

Теперь нам необходимо создать папку templates внутри send_email, а в ней 2 файла: index.html и success.html.

В файле index.html надо создать форму для ввода почты. Файл success.html не должен содержать ничего особого.

Вот и всё. Теперь мы можем создать миграции, затем применить их и запустить проект:

Исходный код можно посмотреть на странице автора на GitHub.

Перевод статьи «Implementing Email Sending Functionality in a Django App»