【问题标题】:Error running WSGI application, ModuleNotFoundError: No module named 'django_countries'运行 WSGI 应用程序时出错,ModuleNotFoundError: No module named 'django_countries'
【发布时间】:2020-02-01 20:16:23
【问题描述】:

我正在尝试在 PythonAnywhere 上部署我的 webApp,但出现以下错误:

2019-10-01 18:20:12,820: Error running WSGI application
2019-10-01 18:20:12,928: ModuleNotFoundError: No module named 'django_countries'
2019-10-01 18:20:12,928:   File "/var/www/namesurname_pythonanywhere_com_wsgi.py", line 33, in <module>
2019-10-01 18:20:12,929:     application = get_wsgi_application()
2019-10-01 18:20:12,929: 
2019-10-01 18:20:12,929:   File "/home/namesurname/.virtualenvs/myenv/lib/python3.7/site-packages/django/core/wsgi.py", line 12, in get_wsgi_application
2019-10-01 18:20:12,929:     django.setup(set_prefix=False)
2019-10-01 18:20:12,929: 
2019-10-01 18:20:12,929:   File "/home/namesurname/.virtualenvs/myenv/lib/python3.7/site-packages/django/__init__.py", line 24, in setup
2019-10-01 18:20:12,929:     apps.populate(settings.INSTALLED_APPS)
2019-10-01 18:20:12,930: 
2019-10-01 18:20:12,930:   File "/home/namesurname/.virtualenvs/myenv/lib/python3.7/site-packages/django/apps/registry.py", line 91, in populate
2019-10-01 18:20:12,930:     app_config = AppConfig.create(entry)
2019-10-01 18:20:12,930: 
2019-10-01 18:20:12,930:   File "/home/namesurname/.virtualenvs/myenv/lib/python3.7/site-packages/django/apps/config.py", line 90, in create
2019-10-01 18:20:12,930:     module = import_module(entry)

Django_countries 已经安装成功,我在任何地方都使用了 python 的 bash 控制台。 我还安装了其他第三方模块,例如 django-allauth,但这些都没有错误。

由于我不知道去哪里看,我不会发布一堆可能不相关的代码,我会应要求发布。

这是我尝试部署的第一个 web 应用程序,非常感谢任何帮助或提示,谢谢。

编辑:

(myvirtualenv) 13:21 /home $ pip list
Package             Version  
------------------- ---------
certifi             2019.9.11
chardet             3.0.4    
defusedxml          0.6.0    
Django              2.2.6    
django-allauth      0.40.0   
django-countries    5.5      
django-crispy-forms 1.7.2    
idna                2.8      
oauthlib            3.1.0    
pip                 19.2.3   
python3-openid      3.1.0    
pytz                2019.2   
requests            2.22.0   
requests-oauthlib   1.2.0    
setuptools          41.2.0   
six                 1.12.0   
sqlparse            0.3.0    
urllib3             1.25.6   
wheel               0.33.6

【问题讨论】:

  • 检查您是否在 settings.py 文件的 INSTALLED_APPS 中添加了“django_countries”。
  • 使用pip list 来验证安装的包。如果安装正确,应该存在“django-countries”。
  • 您应该将 virtualenv 设置为 myvirtualenv 而不是 myenv,因为 myvirtualenv 是您安装软件包的位置。 This python-anywhere help page 说你之后必须重新加载网络应用程序。
  • The Django Girls deployment chapter 使用 Python Anywhere,因此您可能会发现它很有用。建议与 Stack Overflow 无关,但您可以尝试 Heroku 的免费层。
  • 你可以试试Heroku。试用版可用。

标签: django pythonanywhere django-countries


【解决方案1】:

用于 pip 命令的 virtualenv 是 myvirtualenv,而用于 Web 应用程序的 virtualenv 是 myenv。对两者使用相同的 virtualenv。

【讨论】:

    猜你喜欢
    • 2018-12-16
    • 1970-01-01
    • 2021-11-10
    • 1970-01-01
    • 1970-01-01
    • 2021-07-30
    • 1970-01-01
    • 1970-01-01
    • 2021-07-20
    相关资源
    最近更新 更多