ImportError: No module named 'django_select2'
ImportError: No module named 'django_select2'
我正在尝试在 pythonanywhere
上部署我的 Django 应用程序。我已经安装了应用程序所需的所有软件包。我也在我的应用程序中使用 django_select2
可重复使用的应用程序。
首先,我激活虚拟环境并通过以下命令安装 django_select2
:
$ pip install django_select2
当我执行以下命令时
$ pip freeze
cryptography==2.2.2
Django==2.0.7
django-appconf==1.0.2
django-select2==6.1.0
Flask==1.0.2
Flask-JWT==0.3.2
Flask-SQLAlchemy==2.3.2
furl==1.2
idna==2.7
如您所见,django_select2
也在安装列表中。我还在我的虚拟环境中检查了 site-packages
。还有 django_select2
个文件夹。
然而,当我 运行 我的应用程序时,它会在我的 error.log
中生成 ImportError: No module named 'django_select2'
这是我的部分 error.log
2018-07-14 14:18:53,934: Error running WSGI application
2018-07-14 14:18:53,934: ImportError: No module named 'django_select2'
2018-07-14 14:18:53,934: File "/var/www/harunergul_pythonanywhere_com_wsgi.py", line 22, in <module>
2018-07-14 14:18:53,935: application = get_wsgi_application()
2018-07-14 14:18:53,935:
2018-07-14 14:18:53,935: File "/usr/local/lib/python3.5/dist-packages/django/core/wsgi.py", line 13, in get_wsgi_application
2018-07-14 14:18:53,935: django.setup(set_prefix=False)
2018-07-14 14:18:53,935:
2018-07-14 14:18:53,935: File "/usr/local/lib/python3.5/dist-packages/django/__init__.py", line 27, in setup
2018-07-14 14:18:53,935: apps.populate(settings.INSTALLED_APPS)
2018-07-14 14:18:53,935:
2018-07-14 14:18:53,935: File "/usr/local/lib/python3.5/dist-packages/django/apps/registry.py", line 85, in populate
2018-07-14 14:18:53,936: app_config = AppConfig.create(entry)
2018-07-14 14:18:53,936:
2018-07-14 14:18:53,936: File "/usr/local/lib/python3.5/dist-packages/django/apps/config.py", line 90, in create
2018-07-14 14:18:53,936: module = import_module(entry)
有什么建议吗?我缺少什么?
问题是应用程序在这种情况下没有使用虚拟环境。如果我们查看下面的行,我们将看到 /usr/local/...
。所以应用程序使用 pythonanywhere.com
默认环境。
File "/usr/local/lib/python3.5/dist-packages/django/core/wsgi.py", line 13,
这意味着我们在 virtualenv
中安装的任何内容都不会影响默认服务器。在 pythonanywhere.com
中有 virtualenv 菜单,请确保您在该菜单中输入了正确的路径信息。
PythonAnywhere 上的默认 pip 适用于 Python 2.7,因此您将模块安装到错误版本的 Python(您的网络应用程序使用的是 3.5) .使用 pip3.5 安装您的模块。
我正在尝试在 pythonanywhere
上部署我的 Django 应用程序。我已经安装了应用程序所需的所有软件包。我也在我的应用程序中使用 django_select2
可重复使用的应用程序。
首先,我激活虚拟环境并通过以下命令安装 django_select2
:
$ pip install django_select2
当我执行以下命令时
$ pip freeze
cryptography==2.2.2
Django==2.0.7
django-appconf==1.0.2
django-select2==6.1.0
Flask==1.0.2
Flask-JWT==0.3.2
Flask-SQLAlchemy==2.3.2
furl==1.2
idna==2.7
如您所见,django_select2
也在安装列表中。我还在我的虚拟环境中检查了 site-packages
。还有 django_select2
个文件夹。
然而,当我 运行 我的应用程序时,它会在我的 error.log
ImportError: No module named 'django_select2'
这是我的部分 error.log
2018-07-14 14:18:53,934: Error running WSGI application
2018-07-14 14:18:53,934: ImportError: No module named 'django_select2'
2018-07-14 14:18:53,934: File "/var/www/harunergul_pythonanywhere_com_wsgi.py", line 22, in <module>
2018-07-14 14:18:53,935: application = get_wsgi_application()
2018-07-14 14:18:53,935:
2018-07-14 14:18:53,935: File "/usr/local/lib/python3.5/dist-packages/django/core/wsgi.py", line 13, in get_wsgi_application
2018-07-14 14:18:53,935: django.setup(set_prefix=False)
2018-07-14 14:18:53,935:
2018-07-14 14:18:53,935: File "/usr/local/lib/python3.5/dist-packages/django/__init__.py", line 27, in setup
2018-07-14 14:18:53,935: apps.populate(settings.INSTALLED_APPS)
2018-07-14 14:18:53,935:
2018-07-14 14:18:53,935: File "/usr/local/lib/python3.5/dist-packages/django/apps/registry.py", line 85, in populate
2018-07-14 14:18:53,936: app_config = AppConfig.create(entry)
2018-07-14 14:18:53,936:
2018-07-14 14:18:53,936: File "/usr/local/lib/python3.5/dist-packages/django/apps/config.py", line 90, in create
2018-07-14 14:18:53,936: module = import_module(entry)
有什么建议吗?我缺少什么?
问题是应用程序在这种情况下没有使用虚拟环境。如果我们查看下面的行,我们将看到 /usr/local/...
。所以应用程序使用 pythonanywhere.com
默认环境。
File "/usr/local/lib/python3.5/dist-packages/django/core/wsgi.py", line 13,
这意味着我们在 virtualenv
中安装的任何内容都不会影响默认服务器。在 pythonanywhere.com
中有 virtualenv 菜单,请确保您在该菜单中输入了正确的路径信息。
PythonAnywhere 上的默认 pip 适用于 Python 2.7,因此您将模块安装到错误版本的 Python(您的网络应用程序使用的是 3.5) .使用 pip3.5 安装您的模块。