2009-11-27 18 views
6

¿Existe un complemento para producir correos electrónicos resumidos diarios o semanales en Django? (Queremos combinar muchas pequeñas notificaciones en un solo correo electrónico, en lugar de molestar a la gente todo el tiempo.)Django correo electrónico resumen

Django-mailer dice que esto es compatible, pero me han dicho que realmente no.

+0

pertenece al superusuario? – falstro

+0

¿Por qué? Django no es material de nivel de usuario. Esto es código –

+0

Sí, estoy pensando, tal vez se trata de usar el código, en lugar de modificarlo. Sólo preguntaba. – falstro

Respuesta

4

Hay una aplicación django-mailer de la que no tenía conocimiento hasta ahora, por lo que la respuesta a continuación detalla mi propio enfoque.

El caso más simple no requerirá mucho:

poner esto en su app/management/commands/send_email_alerts.py, a continuación, configurar una tarea programada para ejecutar este comando una vez a la semana con python manage.py send_email_alerts (todos los caminos deben establecerse en el entorno del curso para manage.py para recoger a sus configuración de la aplicación)

from django.core.management.base import NoArgsCommand 
from django.db import connection 
from django.core.mail import EmailMessage 

class Command(NoArgsCommand): 
    def handle_noargs(self,**options): 
     try: 
      self.send_email_alerts() 
     except Exception, e: 
      print e 
     finally: 
      connection.close() 

    def send_email_alerts(self):   
     for user in User.objects.all(): 
      text = 'Hi %s, here the news' % user.username 
      subject = 'some subject' 
      msg = EmailMessage(subject, text, settings.DEFAULT_FROM_EMAIL, [user.email]) 
      msg.send() 

Pero si va a necesitar para realizar un seguimiento de lo que un correo electrónico a cada usuario y con qué frecuencia, se necesitará algo de código adicional. Aquí hay un homegrown example. Quizás es ahí donde django-mailer puede llenar los vacíos.

3

Acabo de lanzar el paquete django-digested a PyPI. Admite notificaciones instantáneas, resúmenes diarios y semanales y preferencias individuales para diferentes grupos de actualizaciones.

Cuestiones relacionadas