Страницы

Поиск по вопросам

четверг, 7 марта 2019 г.

django. отправка email на localhost`e

Подскажите, каким образом я могу отправить письмо на почтовый ящик на локальном сервере. джанго работает на localhost:8080 для отправки (как прочитал в документации) нужен SMTP сервер. Запускаю тоже локальный
python -m smtpd -n -c DebuggingServer localhost:1025
получаю localhost:1025 во вьюхе
send_mail('theme', 'my messege', 'admins@studio.ru', ['a@a.ru'])
ловил разные ошибки, например с getaddrinfo(host, port) добавил во вьюху
import socket socket.getaddrinfo('localhost', 8080)
сейчас ошибка [Errno 11004] getaddrinfo failed
(code, msg) = self.connect(host, port)
я вообще не знаю как настраивать (новичек) и написал в сеттингс:
EMAIL_HOST = 'localhost:8080' EMAIL_HOST_USER = 'username@domain.ru' EMAIL_HOST_PASSWORD = '' EMAIL_PORT = 1025
у верен в сеттингс проблема. Подскажите как все правильно настроить?


Ответ

Для разработки мне подходит решение в одну строчку. Все отправленные письма будут просто выводится в консоль(stdout).
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
Если вам все же необходимо настроить работу почты через отправку сервером. Запускаем питоновский почтовик
python -m smtpd -n -c DebuggingServer localhost:1025
В файл настроек приложения
EMAIL_HOST = 'localhost' EMAIL_PORT = 1025
Всё :)
Подробнее:
Ссылка на документацию Stackoverflow Test sending email without email server

Комментариев нет:

Отправить комментарий