Как проверить поле статуса в моделях django и отправить пользователю письмо? - PullRequest
0 голосов
/ 03 августа 2020

Я написал полную систему django билетов для компании. Все работает, авторизуйтесь, зарегистрируйтесь, отправьте тикет, базу, отправьте письмо админу. Осталось только проверить поле статуса билета и, если оно истинно, отправить электронное письмо пользователю, который его разместил.

class tickets(models.Model):
    name = models.ForeignKey(devices, on_delete=models.CASCADE,     blank=True, null=True)
    location = models.CharField(max_length=200)       
    company = models.CharField(max_length=200)
    serial_number = models.CharField(max_length=200)
    problem = models.CharField(max_length=1000)
    contact_number = models.CharField(max_length=200)
    status = models.BooleanField(default=False)
    author = models.ForeignKey(User, on_delete=models.CASCADE,   r elated_name="authorname", null=True)
    executive = models.ForeignKey(executives, on_delete=models.CASCADE, blank=True, null=True)

def __str__(self):
    return self.problem

1 Ответ

0 голосов
/ 03 августа 2020

можно так

from django.core.mail import send_mail

class tickets(models.Model):
   email_as_send = models.BooleanField(default=False)
    ...

   def save(self):
       if self.status and self.email_as_send:
          send_mail("subject", "message","your_website@email.fr", [self.author.email])
          self.email_as_send = True
       super().save()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...