Django EmailMessage возвращает ошибку в задаче django_rq
Я пытаюсь сделать простой сервис отправки почты с помощью django. Без использования очереди все работает нормально, но как только я добавляю использование django_rq, возникает ошибка при выполнении msg.send()
class SendEmailSerializer(serializers.Serializer):
email_to = serializers.ListField(write_only=True)
subject = serializers.CharField(write_only=True)
template_name = serializers.CharField(write_only=True)
template_data = serializers.DictField(write_only=True)
def create(self, validated_data):
send_email_wrapper(
emails_to=validated_data.get("email_to"),
subject=validated_data.get("subject"),
template_name=validated_data.get("template_name"),
template_data=validated_data.get("template_data")
)
return {}
import os, django_rq
from sizze_email.settings import BASE_DIR
from django.conf import settings
from django.template.loader import render_to_string
from django.core.mail import get_connection, EmailMessage
FROM_EMAIL = getattr(settings, 'EMAIL_FROM')
def find_template(template_name):
for root, dirs, files in os.walk(os.path.join(BASE_DIR, "templates")):
if template_name in files:
result = os.path.join(root, template_name)
return result
def send_emails(emails_to, subject, template_name, template_data):
template = find_template(template_name=template_name)
message = render_to_string(template, template_data)
connection = get_connection()
step = 100
for index in range(0, len(emails_to), step):
msg = EmailMessage(
subject=subject,
body=message,
from_email=FROM_EMAIL,
bcc=emails_to[index:index+step],
connection=connection
)
msg.content_subtype = "html"
msg.send()
def send_email_wrapper(emails_to, subject, template_name, template_data):
django_rq.enqueue(func=send_emails, emails_to=emails_to, subject=subject,
template_name=template_name, template_data=template_data)
Я использую amazon ses для отправки почты, django-rq выполняет другие задачи, и если я уберу отправку почты из задачи, то все будет работать нормально. В чем может быть проблема?