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

时间:2016-07-12 11:40:31

标签: python django pip virtualenv django-autocomplete-light

我正在将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. 如果我在虚拟环境之外运行命令,则会收到以下错误:

    来自django.core.management的文件&#34; manage.py&#34;,第8行 import execute_from_command_line ImportError:没有名为django.core.management的模块

  2. 如果我从虚拟环境中运行命令,(我已经使用install.pip要求运行了内部pip)我收到此错误

  3. 为了便于阅读,我已将长路径更改为/ 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编码器,所以希望我错过了一个简单的解决方案)任何帮助都非常感谢。

1 个答案:

答案 0 :(得分:3)

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

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