작은 Django 애플리케이션을 작성 중이므로 특정 간격으로 실행되는 각 모델 객체에 대해 을 각주기 객체에 대해 작성할 수 있어야합니다. 나는이 셀러리 응용 프로그램을 사용 해요,하지만 난 한 가지 이해할 수 없다 :Celery에서 PeriodicTask run() 메소드의 자체 매개 변수
다음class ProcessQueryTask(PeriodicTask):
run_every = timedelta(minutes=1)
def run(self, query_task_pk, **kwargs):
logging.info('Process celery task for QueryTask %d' %
query_task_pk)
task = QueryTask.objects.get(pk=query_task_pk)
task.exec_task()
return True
내가 다음을 수행하고 있습니다를 :
>>> from tasks.tasks import ProcessQueryTask
>>> result1 = ProcessQueryTask.delay(query_task_pk=1)
>>> result2 = ProcessQueryTask.delay(query_task_pk=2)
첫 번째 호출은 성공하지만, 다른 정기 간행물 호출을 반환 - TypeError : run()은 celeryd 서버에서 정확히 2 개의 키워드가 아닌 인수 (주어진 값 1)를 사용합니다. 자신의 매개 변수를 PeriodicTask run()
에 전달할 수 있습니까?