- Django
- Celery
- Amazon SES
pip install django-celery-ses
python
CELERY_BROKER_URL = 'redis://localhost:6379'
EMAIL_BACKEND = 'django_celery_ses.backends.CeleryEmailBackend'
python
CELERY_ACCEPT_CONTENT = ['json']
CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'
AWS_ACCESS_KEY_ID = 'your-access-key-id'
AWS_SECRET_ACCESS_KEY = 'your-secret-access-key'
AWS_SES_REGION_NAME = 'your-ses-region'
CELERY_BROKER_URL = 'redis://localhost:6379'
CELERY_RESULT_BACKEND = 'redis://localhost:6379/0'
CELERY_TASK_DEFAULT_QUEUE = 'default'
python
from django_celery_ses.tasks import send_ses_email_task
def send_email(subject, body, recipient_list):
send_ses_email_task.delay(subject, body, recipient_list)
python
from .tasks import send_email
def send_email_view(request):
subject = 'Test Email'
body = 'This is a test email using django-celery-ses.'
recipients = ['test@example.com']
send_email(subject, body, recipients)
return HttpResponse('Email sent successfully!')