我正在尝试在Django启动时自动启动Django后台任务。
import os
import subprocess
import sys
from django.core import management
if __name__ == "__main__":
from django.core.management import execute_from_command_line
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'config.settings.prod')
# Start background tasks
if os.environ.get('RUN_MAIN'):
management.call_command('background_task')
问题是我遇到了这个异常:
Traceback (most recent call last):
File "manage.py", line 13, in <module>
management.call_command('background_task')
File "/env/lib/python3.5/site-packages/django/core/management/__init__.py", line 104, in call_command
raise CommandError("Unknown command: %r" % command_name)
django.core.management.base.CommandError: Unknown command: 'background_task'
奇怪的是,出现异常消息后,我在控制台上收到“等待任务”,并且一切正常。任务执行没有问题。 如果我尝试捕获此异常,则任务将无法工作。 有什么建议可以避免这个错误吗?