在Django中实现定时任务的方式有两种常用的方法:
安装Celery:
pip install celery 创建Celery任务:
# tasks.py from celery import Celery app = Celery('myapp', broker='redis://localhost:6379/0') @app.task def my_task(): # Do something 在Django中使用Celery:
# settings.py CELERY_BROKER_URL = 'redis://localhost:6379/0' # views.py from myapp.tasks import my_task my_task.delay() 启动Celery worker:
celery -A myapp worker --loglevel=info 安装Django-crontab:
pip install django-crontab 在Django项目的settings.py中配置定时任务:
# settings.py CRONJOBS = [ ('*/1 * * * *', 'myapp.tasks.my_task'), # 每隔1分钟执行my_task任务 ] 在Django项目的urls.py中添加定时任务的url:
# urls.py from django_crontab import urls urlpatterns = [ # other urls path('django_crontab/', include('django_crontab.urls')), ] 运行定时任务命令:
python manage.py crontab add 以上是两种在Django中实现定时任务的常用方法,可以根据具体的需求选择合适的方式。