How to programmatically generate celerybeat entries with celery and Django

前端 未结 2 2029
傲寒
傲寒 2021-02-01 09:17

I am hoping to be able to programmatically generate celerybeat entries and resync celerybeat when entries are added. The docs here state

By default the

2条回答
  •  自闭症患者
    2021-02-01 09:38

    This is what ended up working for me :

    def addTask(request):
    
      intervalSchedule = IntervalSchedule.from_schedule(schedule(timedelta(seconds=10)))
      intervalSchedule.save()
    
      modelData = dict(
          name="dcTestPersist",
          task="technologytrackerapi.tasks.createRecord",
          interval_id=intervalSchedule.pk,
      )
    
      periodicTask = PeriodicTask(**modelData)
      periodicTask.save()
    
      me = ModelEntry(periodicTask)
    
      try:
          me.save()
    
      except:
        from django.db import connection
        print connection.queries
        raise
    
      return render_to_response('taskView.html')
    

    I had to wrap the Periodic Task in a ModelEntry.

提交回复
热议问题