django不启动项目运行指定模块

最近做一个项目,使用到django的crontab功能,因crontab是在linux下创建计划任务,在windows平台开发调试时,使用crontab会报错。故使用如下方法可在不runserver的情况下运行脚本。

  1. 在需要运行的文件中添加代码
    BASE_DIR 根据脚本的位置定位到项目根目录
  1. import os
  2. import sys
  3. import django
  4. SCRIPTS_DIR = os.path.dirname(os.path.abspath(__file__))
  5. # the dir manage.py
  6. BASE_DIR = os.path.dirname(os.path.dirname(SCRIPTS_DIR))
  7. # print(BASE_DIR)
  8. sys.path.append(BASE_DIR)
  9. os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ucmdb.settings")
  10. os.environ.setdefault("DJANGO_SETTINGS_ENV", "quxf")
  11. django.setup()
  1. 之后再此段代码下方添加需要单独运行的代码即可