Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在Django中发送存储在MySQL数据库中的电子邮件_Python_Mysql_Django_Cron_Celery - Fatal编程技术网

Python 如何在Django中发送存储在MySQL数据库中的电子邮件

Python 如何在Django中发送存储在MySQL数据库中的电子邮件,python,mysql,django,cron,celery,Python,Mysql,Django,Cron,Celery,我正在Django中构建一个web应用程序。我将所有电子邮件存储在MySQL数据库队列中,这样系统在发送这些电子邮件时不会减慢速度 使用PHP,我会将cronjob配置为每分钟运行一次,以查询数据库队列并发送这些电子邮件。对于Django,我不知道该怎么做 任何有用的指针都会非常有用 谢谢请看一下本模块 它正是你所需要的。它将所有电子邮件存储在数据库中,然后您可以使用命令发送它们 python manage.py send_queued_mail 如果由于某些原因,您无法使用该模块。您可以创建

我正在
Django
中构建一个web应用程序。我将所有电子邮件存储在MySQL数据库队列中,这样系统在发送这些电子邮件时不会减慢速度

使用
PHP
,我会将cronjob配置为每分钟运行一次,以查询数据库队列并发送这些电子邮件。对于Django,我不知道该怎么做

任何有用的指针都会非常有用


谢谢

请看一下本模块 它正是你所需要的。它将所有电子邮件存储在数据库中,然后您可以使用命令发送它们

python manage.py send_queued_mail

如果由于某些原因,您无法使用该模块。您可以创建命令并以类似方式运行。

请查看此模块 它正是你所需要的。它将所有电子邮件存储在数据库中,然后您可以使用命令发送它们

python manage.py send_queued_mail

如果由于某些原因,您无法使用该模块。您可以创建命令并以类似的方式运行。

如果您只发送一到两封电子邮件,则不会太慢。您仍然可以使用cronjob。我猜你是怎么储存这些邮件的?在视图或脚本中,您正在对它们进行排队,为什么不发送它们?有时,我会一次发送超过3-4封电子邮件,我发现使用SMTP只需几秒钟。因此,我将存储在一个
队列
表中,我想单独处理该表。如果您真的只想像在PHP中那样做,您可以在django中创建一个管理命令,并从cronjob()触发它,这是现成的,不需要额外的依赖项。对于更复杂的解决方案,您可以使用芹菜,但它在您的解决方案中添加了另一层,因此请慎重考虑。如果您只发送一到两封电子邮件,则不慢。您仍然可以使用cronjob。我猜你是怎么储存这些邮件的?在视图或脚本中,您正在对它们进行排队,为什么不发送它们?有时,我会一次发送超过3-4封电子邮件,我发现使用SMTP只需几秒钟。因此,我将存储在一个
队列
表中,我想单独处理该表。如果您真的只想像在PHP中那样做,您可以在django中创建一个管理命令,并从cronjob()触发它,这是现成的,不需要额外的依赖项。对于更复杂的解决方案,您可以使用芹菜,但它将另一层添加到您的解决方案中,因此请慎重考虑。