Files
NovaWoW/home/library_correo.py

36 lines
1.1 KiB
Python

import os
from django.core.mail import send_mail
from django.conf import settings
from django.template.loader import render_to_string
from django.utils.html import strip_tags
def enviar_correo(subject, to_email, template, context):
"""
Envía un correo electrónico utilizando una plantilla HTML.
Args:
subject (str): El asunto del correo.
to_email (str): Dirección de correo del destinatario.
template (str): Ruta de la plantilla HTML.
context (dict): Contexto para renderizar la plantilla.
"""
try:
# Renderizar el contenido del correo desde una plantilla
html_message = render_to_string(template, context)
plain_message = strip_tags(html_message)
from_email = settings.DEFAULT_FROM_EMAIL
# Enviar el correo
send_mail(
subject,
plain_message,
from_email,
[to_email],
html_message=html_message,
fail_silently=False,
)
return True
except Exception as e:
print(f"Error al enviar el correo: {e}")
return False