Не работает автообнаружение фоновых задач Django - PullRequest
0 голосов
/ 04 ноября 2018

Я настроил фоновые задачи в приложении Django в соответствии с документами. Структура моего приложения следующая:

todo_app
    |
    task
    |   |
    |   models, tests, urls, admin, apps
    |
    |
    frontend
    |       |
    |       tasks.py
    |       |
    |       models, tests, urls, admin, apps
    |
    manage.py
    |
    |todo_app
            |
            settings, urls, wsgi etc

settings.py:

INSTALLED_APPS = [
  ...
'background_task',
  ...
]
BACKGROUND_TASK_RUN_ASYNC = True

tasks.py:

from background_task import background

@background(schedule=1)
def task_runner(repeat=3):
    print("hello world")

python manage.py process_tasks запускает задачу, когда метод вызывается в некотором представлении. Проблема заключается в том, что если он вызывается в представлении, он будет вызываться слишком много раз, и повтор будет излишне перегружен.

Какую ошибку я делаю при автоматическом обнаружении? Нужно ли вызывать метод вручную даже после запуска python manage.py process_tasks? Спасибо.

1 Ответ

0 голосов
/ 04 ноября 2018

Затем вам нужно запустить ежедневное задание для жесткого удаления задач, удаленных более 14 дней назад. У вас есть 3 варианта сделать это:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...