clase enviarEmail.py
#! /usr/bin/python
# -*- coding: UTF-8 -*-
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
import sys
from django.conf import settings
class ContenidoMensaje():
titulo = ""
fecha = None
def __init__(self, titulo, fecha, detalle_mensaje):
self.titulo = titulo
self.fecha = fecha
self.detalle_mensaje = detalle_mensaje
class EmailHoteleria():
emitente = ""
emisor = "carluchojordan@gmail.com"
detalle_mensaje = None
def __init__(self, emitente, emisor, detalle_mensaje):
self.emitente = emitente
self.emisor = emisor
self.detalle_mensaje = detalle_mensaje
def enviarMensaje(self):
msg = MIMEMultipart('alternative')
c = ""
html = """\
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
</head>
<body>
<p style='color:white; font-size:18px; background:#3E96D6'>
titulo
</p>
<h2 style='color:black; font-size:16px'>"""+self.detalle_mensaje.titulo+""" </h2>
<div style="color:black; font-size:12px; border:#3E96D6">"""+(self.detalle_mensaje.detalle_mensaje)+"""</div>
</body>
</html>
"""
part2 = MIMEText(html, 'html', _charset='UTF-8')
msg['Subject'] = (self.detalle_mensaje.titulo)
msg['From'] = self.emitente
msg['To'] = self.emisor
msg.attach(part2)
server = smtplib.SMTP('smtp.gmail.com:587')
server.starttls()
server.login("carluchojordan@gmail.com","XXXXXXXX")
respuesta = server.sendmail(self.emitente, self.emisor ,msg.as_string())
server.quit()
return respuesta
en la vista debe de contener lo siguiente, instanciamos la clase email para poder enviar, observación debe de estar instalada el postfix para que se envie el email, sino lo tiene instalado va a salir error, para eso debe de instalarlo de la siguiente forma:
sudo apt-get install postfix
vista.py
#! /usr/bin/python
# -*- coding: UTF-8-*-
# +-----------------------------------------------------------------------------+
# | |
# | Nombre archivo: views.py |
# | Autor: Carlos Jordàn Murillo |
# | |
# | Descripci?n: |
# | Sirve para poder validar y verificar cuando un usuario intenta ingresar |
# | en los templates. |
# | |
# +-----------------------------------------------------------------------------+
from django.template import RequestContext
from django.shortcuts import render_to_response
from django.http import *
from random import choice
from string import letters
from django.contrib.auth.models import User
from django.views.decorators.csrf import csrf_exempt
from django.contrib.auth import authenticate
from django.core.mail import send_mail
from datetime import *
from django.http import *
from django import forms
from correo.CorreoElectronico import ContenidoMensaje, EmailHoteleria
import time
import datetime
def enviarEmail(request):
today = datetime.date.today()
detalleMensaje = ContenidoMensaje("Esto es una prueba", today, "Envio de prueba")
enviar_mensaje = EmailHoteleria("carluchojordan@gmail.com","carluchojordan@gmail.com",detalleMensaje)
enviar_mensaje.enviarMensaje()
return HttpResponse("dsadfsa")
# -*- coding: UTF-8-*-
# +-----------------------------------------------------------------------------+
# | |
# | Nombre archivo: views.py |
# | Autor: Carlos Jordàn Murillo |
# | |
# | Descripci?n: |
# | Sirve para poder validar y verificar cuando un usuario intenta ingresar |
# | en los templates. |
# | |
# +-----------------------------------------------------------------------------+
from django.template import RequestContext
from django.shortcuts import render_to_response
from django.http import *
from random import choice
from string import letters
from django.contrib.auth.models import User
from django.views.decorators.csrf import csrf_exempt
from django.contrib.auth import authenticate
from django.core.mail import send_mail
from datetime import *
from django.http import *
from django import forms
from correo.CorreoElectronico import ContenidoMensaje, EmailHoteleria
import time
import datetime
def enviarEmail(request):
today = datetime.date.today()
detalleMensaje = ContenidoMensaje("Esto es una prueba", today, "Envio de prueba")
enviar_mensaje = EmailHoteleria("carluchojordan@gmail.com","carluchojordan@gmail.com",detalleMensaje)
enviar_mensaje.enviarMensaje()
return HttpResponse("dsadfsa")
No hay comentarios:
Publicar un comentario