当我 运行 manage.py 时如何修复这些错误

How can I fix these errors when I run manage.py

我正在将 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

我仍然收到错误,但现在它已经改变了。

  1. 如果我在虚拟环境之外运行命令,我会收到以下错误:

    文件 "manage.py",第 8 行,来自 django.core.management 导入 execute_from_command_line 导入错误:没有名为 django.core.management

  2. 的模块
  3. 如果我 运行 来自虚拟环境内部的命令,(我使用 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 编码员所以希望我缺少一个简单的解决方案)非常感谢任何帮助。

dal 表示 django-autocomplete-light。可能有人忘记将这个包包含在需求中。您还可以检查您的 INSTALLED_APPS 以查看是否确实需要它。

要使用 pip 安装它,您应该执行 pip install django-autocomplete-light。希望对你有帮助。