使用django-extensions RunScript时无法导入同目录模块求助
解决方案:修复Django-extensions RunScript模块导入错误
1. 确认scripts目录的包结构
- 确保
mat/scripts/目录下存在空的__init__.py文件,Python需要该文件将目录识别为可导入的包,若缺失则直接创建一个空文件即可。
2. 修正导入语句的路径
由于import_data_script.py与exeee.py处于同一目录,可通过两种方式修复导入:
方式一:使用相对导入
将导入语句修改为:
from .exeee import livsmedelsverket_lista
开头的.表示从当前包(scripts目录)导入目标模块。
方式二:使用绝对导入
基于Django应用结构,使用完整模块路径导入:
from mat.scripts.exeee import livsmedelsverket_lista
3. 验证Django应用配置
检查项目settings.py的INSTALLED_APPS列表,确保同时包含'mat'和'django_extensions':
INSTALLED_APPS = [ # 其他已配置应用 'mat', 'django_extensions', ]
4. 清除Python缓存
删除项目根目录及mat/scripts/目录下的__pycache__文件夹,避免缓存导致的导入异常,之后重新执行脚本命令。
内容的提问来源于stack exchange,提问作者Calle1289
相关产品推荐
相关产品推荐

