Django项目导入Razorpay报ModuleNotFoundError错误如何解决?
错误产生原因
- 核心原因是当前运行Django项目的Python环境中,没有安装Razorpay官方提供的Python SDK依赖包
- 常见衍生原因是环境不匹配:你在全局Python环境安装了razorpay,但项目使用了独立虚拟环境,虚拟环境内未安装对应依赖;或是IDE配置的Python解释器,和实际启动项目的解释器不是同一个,会同时出现IDE提示「Import razorpay could not be resolved」、终端运行抛出
ModuleNotFoundError的情况
排查解决步骤
- 首先激活项目对应的虚拟环境(如果项目开启了虚拟环境)
- Windows环境下,进入项目根目录后执行:
venv\Scripts\activate,如果路径包含空格需要用引号包裹,比如你的项目路径执行:"D:\Project 3\payment\venv\Scripts\activate",激活成功后终端前缀会出现(venv)标识
- Windows环境下,进入项目根目录后执行:
- 执行安装命令安装Razorpay SDK:
如果下载速度慢可以指定国内PyPI源安装:pip install razorpaypip install razorpay -i https://pypi.tuna.tsinghua.edu.cn/simple - 验证依赖安装成功:激活虚拟环境的状态下执行以下命令,正常输出版本号即说明安装完成
python -c "import razorpay; print(razorpay.__version__)" - 修复IDE导入提示(如果IDE仍提示导入失败):打开IDE的Python解释器配置面板,选中你刚才安装了razorpay的项目对应虚拟环境即可。
额外提示:你提供的
views.py代码存在缩进错误,if判断下的逻辑、函数级的return语句都没有正确缩进,依赖安装完成后需要先修正缩进问题才能正常运行项目。
内容的提问来源于stack exchange,提问作者ketanddadhe
相关产品推荐
相关产品推荐

