Как я могу изменить аргументы, переданные на сельдерей программно? Что я должен изменить в следующем коде:Сельдерей PeriodicTask аргументы
from celery.task import PeriodicTask
class MyTask(PeriodicTask):
run_every = timedelta(seconds=1)
value = ''
def run(self, **kwargs):
print 'Passed value %s' % value
Я хотел бы быть в состоянии изменить свойство значения при жизни приложения. Значение будет, вероятно, словарем, но я сомневаюсь, что он что-то изменит.
Это просто простой словарь. Мне действительно нужно создать другую таблицу и прочитать ее из базы данных? – Dejwi
Метод run() вызывается Планировщиком. Поэтому вы должны либо настроить класс Scheduler, либо просто прочитать значение в run() из некоторого носителя непрерывности - DB, File, Cache и т. Д. – Tisho
OK. Сейчас я использую кеш. Но это похоже на хак. – Dejwi