You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django+Celery+RabbitMQ运行worker报django.config模块缺失错误如何解决

问题根因

你遇到的ModuleNotFoundError: No module named 'django.config'报错和是否使用虚拟环境没有直接关系,核心问题是Celery加载Django配置时的路径配置错误:Celery尝试导入不存在的django.config模块,说明你项目中Celery初始化配置里的Django配置模块路径写错了。

解决步骤
  • 首先打开你项目根目录下的Celery初始化文件(一般是project_name/celery.py),找到设置DJANGO_SETTINGS_MODULE的代码行,错误写法大概率是:
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'django.config.settings')

修改为你的Django项目实际配置路径,你的项目名是project_name,直接改成:

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'project_name.settings')
  • 如果修改配置后还是报错,执行pip show django检查当前执行命令的Python环境有没有安装Django,没有的话执行pip install django安装即可
  • 配置修复完成后重新执行Celery启动命令即可:
    celery -A project_name worker -l info
虚拟环境相关问题解答

不重建项目迁移到虚拟环境的方法

本身你本次的报错和虚拟环境无关,如果需要把现有项目迁移到虚拟环境,完全不需要重建项目,操作非常简单。

PyCharm迁移到venv虚拟环境的操作难度

操作难度极低,全程可视化操作,5分钟即可完成,步骤如下:

  1. 打开你的项目,依次点击文件 > 设置 > 项目: project_name > Python解释器
  2. 点击解释器右侧的齿轮图标,选择添加
  3. 在弹出的窗口左侧选择Virtualenv Environment,右侧选择新环境,指定虚拟环境存放路径(默认放在项目根目录的venv文件夹即可),基础解释器选择你当前用的Python3.7版本
  4. 点击确定等待虚拟环境创建完成,之后在该解释器下重新安装你项目依赖的所有包(比如Django、Celery等)
  5. 后续运行项目、执行Celery命令时,PyCharm会自动激活虚拟环境;如果手动在命令行执行,先运行项目venv/Scripts/activate脚本激活虚拟环境即可

补充说明:你在非虚拟环境下启动的RabbitMQ服务确实和本次报错无关,只要Celery配置里的RabbitMQ连接地址正确就能正常通信。

内容的提问来源于stack exchange,提问作者Callum

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 22:45:04