我将在我的拼贴画中开始我的第一个django项目,我想知道如何创建一个函数来检查每x次或当我在“警报”表DB中有新行时,以及向其中发送电子邮件或短信后用户。
我的项目是Web系统监视器。
尝试使用cron jobs
,并使用cron jobs
,可以定期进行一次操作。
要在Django中创建cron jobs
,您必须创建一个custom django-admin command
。
management
,并在management
文件夹中创建另一个文件夹commands
commands
文件夹中创建文件my_costum_command.py
。这是将显示在manage.py
命令列表中的命令的名称。 (该应用程序必须在已安装的应用程序中)然后,创建一个类,如:
从django.core.management.base导入BaseCommand...类Command(BaseCommand): help ='命令说明'
def handle(self, *args, **kwargs):
# your code for the action (checking database)
# check the database and send email if needs
现在,将从manage.py
执行命令
然后,创建一个cron作业并每隔一段时间(这里每10分钟一次)执行一次命令:
# m h dom mon dow command
10 * * * * /home/mysite/venv/bin/python /home/mysite/mysite/manage.py my_custom_command
这里是docs如何创建自定义django-admin命令