我正在将Python Django项目从一台服务器移动到另一台服务器。我使用的是Debian 7,它在目标服务器上安装了python 2.7.3(原始服务器也使用了Debian 7)。
我想要移动的项目在其父文件夹中有以下目录: -
-env
-src
它还有一个文件
install.pip
应用程序正在新的网络服务器上运行,现在我已经配置了uwsgi,但我想从项目源文件夹中使用manage.py。当我运行以下命令时:
python manage.py changepassword user
我收到以下错误
File "manage.py", line 8, in <module>
from django.core.management import execute_from_command_line
ImportError: No module named django.core.management
为了尝试解决这个问题,我安装了virtualenv,然后pip并构建了一个新的虚拟环境。然后我运行以下命令:
pip install -r /sourcefolder/install.pip
当我这样做时,我收到了错误
Failed building wheel for Pillow
我在网上研究了这个并确定了一个可能的解决方案是安装libjpg,我用以下命令做了
apt-get install libjpeg8-dev
然后我再次运行pip install -r /sourcefolder/install.pip
,这次完成没有任何错误。
我试图再次运行命令: -
python manage.py changepassword user
我仍然收到错误,但现在已经改变了。
如果我在虚拟环境之外运行命令,则会收到以下错误:
来自django.core.management的文件&#34; manage.py&#34;,第8行 import execute_from_command_line ImportError:没有名为django.core.management的模块
如果我从虚拟环境中运行命令,(我已经使用install.pip要求运行了内部pip)我收到此错误
为了便于阅读,我已将长路径更改为/ sourcepath: -
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/sourcepath/env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 350, in execute_from_command_line
utility.execute()
File "/sourcepath/env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 324, in execute
django.setup()
File "/sourcepath/env/local/lib/python2.7/site-packages/django/__init__.py", line 18, in setup
apps.populate(settings.INSTALLED_APPS)
File "/sourcepath/env/local/lib/python2.7/site-packages/django/apps/registry.py", line 85, in populate
app_config = AppConfig.create(entry)
File "/sourcepath/env/local/lib/python2.7/site-packages/django/apps/config.py", line 90, in create
module = import_module(entry)
File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
ImportError: No module named dal
然而,更多在线研究已经确定这可能是由于错过了一个dal包,我应该可以安装: -
pip install dal
但是当我运行该命令时,我收到以下错误
(路径的第一部分省略)
/local/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:122: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
InsecurePlatformWarning
Could not find a version that satisfies the requirement dal (from versions: )
No matching distribution found for dal
我的研究一直无法找到这个最新错误的任何解决方案。我开始认为我的做法是错误的,因为我似乎陷入了一个不断增加的错误。
我只是想将django项目从一个服务器移动到另一个服务器,并从源文件夹执行manage.py而没有任何错误。 (我是系统管理员而不是django编码器,所以希望我错过了一个简单的解决方案)任何帮助都非常感谢。
答案 0 :(得分:3)
dal
表示django-autocomplete-light。可能有人忘记在要求中包含此包。您还可以检查INSTALLED_APPS以查看是否确实需要它。
要使用pip安装它,您应该执行pip install django-autocomplete-light
。希望它有所帮助。