Django项目中从views目录导入类时出现Import Error求助
解决Django项目中视图类的导入错误
问题根源
你当前的导入代码误用了ml作为包名,但项目里对应的实际包是travello,这是核心拼写错误;同时需确保项目根目录在Python的搜索路径中,避免路径识别问题。
修复步骤
- 修正导入路径拼写
直接替换错误的包名,匹配项目实际的包结构编写导入语句:
from travello.views.views_first import First from travello.views.views_second import Second
- 用Django官方命令运行测试
不要直接执行test_views.py脚本,使用Django的测试命令会自动配置好项目路径,避免导入异常:
python manage.py test tests.test_views
如果使用pytest,也可以用模块方式运行:
python -m pytest tests/test_views.py
- 可选:使用相对导入
若偏好相对导入(仅适用于tests与travello同级的目录结构),可编写如下代码:
from ..travello.views.views_first import First from ..travello.views.views_second import Second
注意:使用相对导入时,必须以模块方式启动测试,不能直接运行test_views.py文件。
- 确认__init__.py有效性
确保travello/views/和tests/目录下的__init__.py文件存在且无语法错误(空文件即可),这是Python识别包的必要条件。
内容的提问来源于stack exchange,提问作者Abhi
相关产品推荐
相关产品推荐

