ModuleNotFoundError:没有名为“paypal”的模块
Posted
技术标签:
【中文标题】ModuleNotFoundError:没有名为“paypal”的模块【英文标题】:ModuleNotFoundError: No module named 'paypal' 【发布时间】:2020-07-14 20:50:03 【问题描述】:我正在使用,
Python:3.8, 姜戈:3.0, django-paypal: 1.0.0
我正在尝试使用 Django-Paypal lib 实现一个简单的支付网关。
我在迁移过程中遇到了这个错误.....
(project-venv) PS J:\jaimin (E)\Programming Practice\Django\Payment Gateway using Paypal\simple_ecommerce\django_project> py -3 .\manage.py migrate
Traceback (most recent call last):
File ".\manage.py", line 15, in <module>
execute_from_command_line(sys.argv)
File "C:\Users\jaimi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\core\management\__init__.py", line 401, in execute_from_command_line
utility.execute()
File "C:\Users\jaimi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\core\management\__init__.py", line 377, in execute
django.setup()
File "C:\Users\jaimi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\__init__.py", line 24, in setup
apps.populate(settings.INSTALLED_APPS)
File "C:\Users\jaimi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\apps\registry.py", line 91, in populate
app_config = AppConfig.create(entry)
File "C:\Users\jaimi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\apps\config.py", line 116, in create
mod = import_module(mod_path)
File "C:\Users\jaimi\AppData\Local\Programs\Python\Python38-32\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
File "<frozen importlib._bootstrap>", line 991, in _find_and_load
File "<frozen importlib._bootstrap>", line 961, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
File "<frozen importlib._bootstrap>", line 991, in _find_and_load
File "<frozen importlib._bootstrap>", line 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'paypal'
这是我的 settings.py
# Application definition
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'ecommerce_app',
'paypal.standard.ipn',
]
我现在能做什么?.....
【问题讨论】:
确保 django-paypal 安装在虚拟环境中。在 Windows 上,我认为你可以这样做:py -3 -m pip freeze
。要安装它,请尝试py -3 -m pip install django-paypal
。
我已经在我的 venv 中安装了 django-paypal
你确定吗? pip freeze 命令的输出是什么?对于No module named 'paypal'
,最简单的解释就是当前环境没有安装。
有时pip
并不指向您认为的 Python。这是 Python 的挫折之一,有a famous xkcd cartoon about it。这就是为什么我总是推荐python -m pip
,因为它保证你使用的是相同版本的Python。我对 Windows 不熟悉,所以对此无能为力,但the docs 说py -3 -m pip
可以工作。
谢谢,兄弟,成功了。我完全按照您的建议进行了尝试.....非常感谢....
【参考方案1】:
尝试删除ecommerce_app
中migrations
文件夹中的所有迁移文件,但不要删除__init__.py
,然后再次运行python manage.py makemigrations
和python manage.py migrate
。我遇到了这样的错误,删除迁移文件对我有用。
【讨论】:
【参考方案2】:您只需要安装 django-paypal。
pip install django-paypal
【讨论】:
【参考方案3】:这是由于 init.py 文件中的循环导入而发生的 按照步骤 : 不要安装这个......也许你已经做到了......
pip uninstall paypal
无需删除迁移,将其卸载并正确重新安装
pip install django-paypal
不要忘记在其中添加“ - ”,因为这是该问题的原因...... 这对我有用! 如果可行,请尝试投赞成票。提前谢谢你
【讨论】:
如果他要使用 django-paypal 为什么要卸载 django ? 不,先生,嘿应该只卸载 paypal ..not django。我用过这个,但是当 unistall django---n 然后卸载 paypal ----y 时,实际上这对我有用!所以我认为分享会有所帮助。 是的,你是对的。如果你想卸载 paypal,我不明白你为什么要写 pip uninstall django paypal。我的意思是你为什么不只写 pip uninstall paypal 是的,先生!绝对正确....我应该编辑 ans 吗?如果可行,请点赞! 如果您在问题或答案编辑中犯了错误,这总是一个好主意以上是关于ModuleNotFoundError:没有名为“paypal”的模块的主要内容,如果未能解决你的问题,请参考以下文章
ModuleNotFoundError:没有名为“dataviz”的模块
ModuleNotFoundError:没有名为“numpy”的模块
错误:ModuleNotFoundError:没有名为“图像”的模块
ModuleNotFoundError:没有名为“knox”的模块