Как отправлять электронные письма и сообщения Whatsapp неактивным пользователям в django
Я хочу отправлять электронные письма и сообщения Whatsapp по истечении срока действия членства. У меня есть команда управления, настроенная на проверку истечения срока членства и обновление статуса. Однако как узнать, какой член обновляется? Я хотел бы создать список словарей с именем и номером, фильтровать их каждый день и рассылать сообщения.
models.py
class Member(models.Model):
full_name = models.CharField(max_length=125)
email = models.EmailField(max_length=125, blank=True, null=True)
phone = models.CharField(max_length=20)
image = models.ImageField(max_length= 256, upload_to=upload_to_image_post, null=True, blank=True)
date_created = models.DateTimeField(default=django.utils.timezone.now)
class Meta:
verbose_name_plural = "All Members"
def __str__(self):
return str(f"{self.full_name}")
class ActiveMember(models.Model):
member = models.OneToOneField(Member, on_delete=models.CASCADE, related_name='is_member')
start_date = models.DateField(default=django.utils.timezone.now)
end_date = models.DateField(default=django.utils.timezone.now)
status = models.CharField(max_length=2, choices=(('1','Active'), ('2','Inactive')), default = '1', blank=True, null=True)
def __str__(self):
return str(f"{self.member}")
команда управления
from turtle import update
from django.core.management.base import BaseCommand, CommandError
from members.models import ActiveMember
from datetime import datetime, timedelta
class Command(BaseCommand):
help = 'Deactivate expired memberships!'
def handle(self, *args, **options):
ActiveMember.objects.filter(end_date__lt=datetime.now().date()).update(status='2')
Какой самый простой способ узнать, какой статус участника изменяется, и получить его имя и номер телефона или имя и электронную почту.