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

Django项目中无法从子目录导入server_tasks文件的求助

Django模块导入问题解决

问题回顾

项目结构:

project
├── app
    ├── __init__.py
    ├── views.py
    ├── ...
    └── tasks
        ├── __init__.py
        └── server_tasks.py

在views.py中尝试导入server_tasks.py时出现错误:

ModuleNotFoundError: No module named 'tasks'

解决方法

方法1:相对导入(同app内推荐使用)

通过相对路径指定当前目录下的tasks模块,修改views.py中的导入语句:

# 导入整个server_tasks模块
from .tasks import server_tasks

# 或者直接导入模块内的特定函数/类
from .tasks.server_tasks import 目标函数名/类名

这里的.代表当前文件所在的app目录,Python会正确定位到同级的tasks目录。

方法2:绝对导入(大型项目更清晰)

利用Django自动添加到Python路径的项目根目录,使用完整的app模块路径导入:

# 导入整个server_tasks模块
from app.tasks import server_tasks

# 或者导入模块内所有内容
from app.tasks.server_tasks import *

额外检查项

  • 确认tasks目录下的__init__.py文件存在(你的结构里已包含,无需修改),Python需要该文件识别目录为可导入模块。
  • 确保app已在项目settings.py的INSTALLED_APPS中注册,避免后续出现关联问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 01:45:18