PyCharm运行Django项目内脚本导入自定义应用模块报错如何解决
解决方案
错误根因说明
你遇到的两个报错分别对应两个独立问题:
ModuleNotFoundError: No module named 'apps.cashpool'是因为PyCharm运行时未正确识别项目根目录为源码根路径django.core.exceptions.ImproperlyConfigured是因为独立运行包含Django模型导入的脚本时,没有提前初始化Django运行环境,Django ORM依赖全局配置项才能正常加载
修复步骤
步骤1:修改脚本代码,提前初始化Django环境
将pycharm_test.py的内容替换为如下代码,注意根据你实际的settings.py存放路径调整DJANGO_SETTINGS_MODULE的取值:
# /Users/jonas/PycharmProjects/Finchin/apps/universe/pycharm_test.py import sys import os import django # 追加项目根目录到系统路径 sys.path.append("/Users/jonas/PycharmProjects/Finchin") # 配置Django设置模块路径,若settings在根目录下的Finchin子目录中则改为"Finchin.settings" os.environ.setdefault("DJANGO_SETTINGS_MODULE", "settings") # 初始化Django运行环境,必须在导入Django模型前执行 django.setup() from apps.cashpool.models import Cashpool from stellar_sdk.asset import Asset from stellar_sdk.keypair import Keypair def test(): print('test') test()
步骤2:配置PyCharm源码根目录
- 在PyCharm左侧文件树中找到项目根目录
/Users/jonas/PycharmProjects/Finchin - 右键点击该目录,选择
Mark Directory as->Sources Root - 重启当前脚本的运行配置后重新执行即可
内容的提问来源于stack exchange,提问作者JSRB
相关产品推荐
相关产品推荐

