123456789101112131415161718192021222324252627282930313233343536373839 |
- # @Author : Rocky
- # @File : celery.py
- # @Time : 2024/3/12 14:13
- # @Author : Rocky
- # @File : celery.py
- # @Time : 2024/3/12 11:52
- import os
- from django.utils import timezone
- from celery import Celery
- # 从环境变量中获取Django环境
- # win:set DJANGO_ENV=local
- # linux:
- # export DJANGO_ENV=local 临时
- # 或vim ~/.bashrc,source ~/.bashrc 永久
- django_env = os.environ.get('DJANGO_ENV')
- if django_env == 'local':
- os.environ.setdefault("DJANGO_SETTINGS_MODULE", 'Ansjer.local_config.local_settings')
- elif django_env == 'test':
- os.environ.setdefault("DJANGO_SETTINGS_MODULE", 'Ansjer.cn_config.test_settings')
- elif django_env == 'cn':
- os.environ.setdefault("DJANGO_SETTINGS_MODULE", 'Ansjer.cn_config.formal_settings')
- elif django_env == 'us':
- os.environ.setdefault("DJANGO_SETTINGS_MODULE", 'Ansjer.us_config.formal_settings')
- elif django_env == 'eu':
- os.environ.setdefault("DJANGO_SETTINGS_MODULE", 'Ansjer.eur_config.formal_settings')
- app = Celery('apps')
- # 使用Django的settings文件配置Celery
- app.config_from_object('django.conf:settings', namespace='CELERY')
- # 自动从django注册的app中发现所有任务
- app.autodiscover_tasks()
- # 解决时区问题,定时任务启动就循环输出
- app.now = timezone.now
|