Я действительно борюсь с чем-то и несколько дней пытался выяснить, что я делаю неправильно ... Я думал, что в том, что я пытаюсь сделать, может быть что-то принципиально неправильное, но я не могу найти ничего, что могло бы предположить, что ,
Я пытаюсь использовать Celery для изменения базы данных Django Session в фоновом режиме.
В качестве теста у меня есть тестовое представление, которое передает идентификатор сеанса этой задаче сельдерея:
@shared_task(name="test_celery_task")
def test_celery_task(sessionid):
s = SessionStore(session_key='sessionid')
s['test_var'] = ["Success"]
s.save()
return "Task Complete"
Я вижу, как запускается задача, и я добавил несколько регистраторов для проверки идентификатор сеанса передается, и не выдается никакой ошибки et c.
Когда я делаю это в оболочке manage.py, она работает нормально. Но я думаю, что это не работает, потому что им управляет работник сельдерея.
Если это невозможно, пусть будет так, и я сэкономлю свое время, пытаясь разобраться, что не так, но все, что я прочитал, говорит о том, что я должен быть в состоянии манипулировать моделями и т. Д. c внутри Celery. без проблем, и что сессия - просто другая модель.
Я все об этом говорю неправильно? У кого-нибудь есть опыт работы с Django SessionStore и Celery. Спасибо!