Advertisement
Guest User

Untitled

a guest
Mar 2nd, 2016
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.40 KB | None | 0 0
  1. Models.py
  2.  
  3. from __future__ import unicode_literals
  4.  
  5. from django.db import models
  6. from django.utils.translation import gettext as _
  7. # Create your models here.
  8. class EmailSetting(models.Model):
  9. email_use_tls = models.BooleanField(_(u'EMAIL_USE_TLS'), default=True)
  10. email_host = models.CharField(_(u'EMAIL_HOST'), max_length=1024)
  11. email_host_username = models.EmailField(_(u'EMAIL_HOST_USER'))
  12. email_host_password = models.CharField(_(u'EMAIL_HOST_PASSWORD'), max_length=255)
  13. email_port = models.PositiveSmallIntegerField(_(u'EMAIL_PORT'), default=587)
  14.  
  15. def __unicode__(self):
  16. return self.email_host_username
  17.  
  18.  
  19. class EmailList(models.Model):
  20. email = models.EmailField(unique=True)
  21. full_name = models.CharField(max_length=120, blank=True, null=True)
  22. timestamp = models.DateTimeField(auto_now_add=True, auto_now=False)
  23. updated = models.DateTimeField(auto_now_add=False, auto_now=True)
  24.  
  25. def __unicode__(self):
  26. return self.email
  27.  
  28. class SendEmail(models.Model):
  29. select_email = models.ForeignKey(EmailList)
  30.  
  31. **Views.py**
  32. def sendmail(request):
  33. if request.method == 'POST':
  34. form = SendEmailForm(request.POST)
  35. if form.is_valid():
  36. subject = form.cleaned_data['subject']
  37. message = form.cleaned_data['message']
  38. print subject
  39. print message
  40. e_list = EmailList.objects.all()
  41.  
  42. # for i in e_list:
  43. # to_email = i.email
  44. try:
  45. #email =
  46. with get_connection(host=config.email_host,
  47. port=config.email_port,
  48. username=config.email_host_username,
  49. password=config.email_host_password,
  50. use_tls=config.email_use_tls,
  51. ) as connection:
  52. for i in e_list:
  53. to_email = i.email
  54. EmailMessage(subject=subject, body=message, from_email=config.email_host_username, to=[to_email], connection=connection).send(fail_silently=False)
  55. #email.send()
  56. print "success"
  57. except BadHeaderError:
  58. return HttpResponse('Invalid header format.')
  59. else:
  60. return HttpResponse('Make sure all fields are entered')
  61. else:
  62. form = SendEmailForm()
  63. form = SendEmailForm()
  64. return render(request,'newsletter/SendMail.html',{'form':form})
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement