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

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

    文件“manage.py”,第 8 行,来自 django.core.management 从命令行导入执行 导入错误:没有名为 django.core.management 的模块

  2. 如果我从虚拟环境内部运行命令(我已使用 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。希望对您有所帮助。

关于python - 当我运行manage.py时如何修复这些错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38327898/

相关文章:

python - 在 django-rest-framework 中出现数据库验证错误后如何返回状态代码?

python - 如何防止 Django 中的重复信号

python - 如何让我的 Heroku 部署的 Django 支持的项目保持干爽?

python - 仅安装依赖项 - setuptools

python - 尝试在 mac 10.7 上安装 pip 时出错

python - 如何指定python请求http put body?

python - 在Python中删除字符串中每个元素的第一项

python - Windows 7 中的延迟命令

python - 编码给出 "' ascii' 编解码器无法编码字符......序号不在范围内(128)“

python - 我可以让 Django 在创建时返回记录的 ID 吗?