2017-08-17 56 views
0

我正在使用Django来创建一个网站。Django-Kronos 0任务安装错误

models.py

class Member(models.Model): 
    ... 
    end_date = models.DateField(blank=True, verbose_name='end_date') 
     Membership_status = models.IntegerField(blank=True, null=True, default=1)#1= active, 0=deactive, 2=refund status 

我要比较的结束日期到今天,如果今天是更近的,我想自动使会员状态零(0)(目前1) 。

因此,我使用了Django-Kronos。

cron.py

from staff.models import Member 
from datetime import timedelta 
import datetime 
import kronos 

@kronos.register('* 1 * * *') 
def the_task(): 
    today = datetime.date.today() 
    Member.objects.filter(end_date__lte=today).update(Membership_status=0) 

我安装的Django,克罗诺斯和安装的应用程序写的kronos

但是,我不知道我如何自动实现cron.py每1.a.m. ('* 1 * * *')意味着上午1点,但它不起作用。

EDIT]

我试图sudo python3 manage.py installtasks在linux(使用腻子)。但是,0 tasks installed发生。

+1

你运行过'python manage.py installtasks'吗? –

+0

我刚试过。但错误发生'OSError:请指定用户或文件名写'。' – Julia

+0

啊,我在Windows上测试。 'Kronos不在Windows上测试。事实上,Windows甚至有cron吗?'然后,如果我只在Linux上运行'python manage.py installtasks'(使用putty),cron.py是否会自动运行? – Julia

回答

0

回答我自己的问题!

我改变了cron.py的位置。 官方克罗诺斯github上说, “克罗诺斯收集从cron任务模块项目中的根,你的每一个应用程序的

但是,我解决了把我cron.py在我的应用程序,而不是项目的根的问题。