如何在Django活动的第一天之前发送电子邮件提醒



我有三个模型。

  1. 自定义用户
  2. 网络注册
  3. Zlink

下面是models.py、中Zlink的代码

class Zlink(models.Model):
customUser = models.ForeignKey(CustomUser, on_delete=models.CASCADE) #foreignkey 1
webregister = models.ForeignKey(Webregister, on_delete=models.CASCADE) #foreignkey 2
reg_link = models.CharField(max_length=255,null=True, blank=True)
def __str__(self):
return str(self.pk)

"外键2";给我事件id;外键1";给我一个用户的电子邮件地址。

在众多字段中,Webregister中的一个字段是event_starts,它包含事件开始的日期和时间。

我可以通过触发查询、获得事件中用户的电子邮件地址

x = Zlink.objects.get(id=1)
x.customUser

现在,如果用户有多个用户,那么这些电子邮件地址如何在事件发生前发送提醒电子邮件?

有线索吗?我是新来的姜戈。

场景1(如果自定义用户模型只有一个电子邮件字段(:

x = Zlink.objects.get(id=1)
email_to_list = [x.customUser.email,]

场景2(如果自定义用户模型有两个电子邮件字段(:

x = Zlink.objects.get(id=1)
email_to_list = [x.customUser.primary_email, x.customUser.secondary_email]

最后使用以下代码发送邮件(假设您有在settings.py中定义的工作smtp设置(

from django.core.mail import send_mail
send_mail(
'Subject here',
'Here is the message.',
'from@example.com',
email_to_list,
fail_silently=False,
)

相关内容

最新更新