Планирование писем с Джанго? - PullRequest
0 голосов
/ 28 октября 2019

Я хочу планировать электронную почту, используя Django. Пример ---> Я хочу отправлять зарегистрированным пользователям информацию об их корзине покупок каждый день в 17:00.

Как мне это сделать с помощью Django? Я прочитал много статей по этой проблеме, но ни одна из них не имеет четкого и определенного решения. Я не хочу применять обходной путь.

Каков правильный способ реализации этого? Можно ли это сделать в рамках моего проекта Django или мне нужно использовать какой-нибудь сторонний сервис?

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

Ответы [ 2 ]

2 голосов
/ 28 октября 2019

Нет встроенного способа сделать то, что вы просите. Однако вы могли бы написать управляющую команду, которая отправляет электронные письма, а затем добавить запись в crontab, которая вызывает эту команду в 17:00 (предполагается, что ваши пользователи находятся в том же часовом поясе, что и ваш сервер).

Другой альтернативой является использование сельдерея и сельдерея для создания запланированных заданий, но для настройки потребуется больше работы.

1 голос
/ 28 октября 2019

Вы можете использовать фонового работника, например celery или redis-queue для фоновых задач.

Сельдерей: https://docs.celeryproject.org/en/latest/django/first-steps-with-django.html

Очередь Redis: https://python -rq.org / docs /

Также есть один действительно простой пакет, который использует базу данных в качестве посредника https://django -background-tasks.readthedocs.io / en / latest /

...