django中的cronjob /任务调度程序

时间:2016-08-12 07:06:51

标签: django cron

我是cronjob的新手。我想检索目录中的数据列表并将信息保存到我的模型中。

这是我的代码:

from os.path import getsize
import time
current_user = request.user

root = "/mnt/data/dashboard/"
for path, subdirs, files in os.walk(root):
    for name in files:
        file_name =  name
        size =  getsize(root)
        filepath = path 
        datastr = os.path.join(filepath,name)
        files = datastr.replace( "/mnt/data/dashboard/","" )
        date =  time.ctime(os.path.getctime(root))

        # insert = File(file=files, owner=current_user, _file_size=size, uploaded_at=date, original_filename=file_name, folder_id=6)
        # insert.save()  

        try:
           insert = File.objects.filter(original_filename = file_name)
        except ObjectDoesNotExist:
           insert = File(file=files, owner=current_user, _file_size=size, uploaded_at=date, original_filename=file_name, folder_id=6)
           insert.save() 

我该怎么做才能确保每天早上每天都执行上面的脚本。如何设置cronjob /任务调度程序?

1 个答案:

答案 0 :(得分:1)

对于这样的任务,我建议你创建一个Django Management Command

将其添加为每日cronjob。使用以下命令打开crontab:

# crontab -e

并使用如下字符串添加命令:

@daily /path/to/manage.py <name_of_management_command>