应用程序部署:Django未在服务器上安装 - AttributeError:'module'对象没有属性'lru_cache'

时间:2017-12-05 18:37:25

标签: web-deployment

我正在尝试部署Django应用程序,出于某种原因,我不断收到此错误。在我看来,Django没有安装,但安装时也出错。感谢您的帮助。我正在Amazon EC2上部署

(venv) ubuntu@ip----:~/quotes$ pip install Django
Collecting Django
  Using cached Django-2.0.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "", line 1, in 
      File "/tmp/pip-build-ceP6se/Django/setup.py", line 32, in 
        version = __import__('django').get_version()
      File "django/__init__.py", line 1, in 
        from django.utils.version import get_version
      File "django/utils/version.py", line 61, in 
        @functools.lru_cache()
    AttributeError: 'module' object has no attribute 'lru_cache'

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-ceP6se/Django/

2 个答案:

答案 0 :(得分:8)

Django已停止支持Python 2版本,您仍然可以尝试使用以下代码安装1.11版本。

pip install Django==1.11

答案 1 :(得分:1)

根据django 2.0发行说明,Django 1.11.x系列是最后一个支持Python 2.7(Check it here

因此,您可以选择使用旧版本的Django,然后使用以下命令安装它:

pip install 'Django<2'

但是如果您决定使用Django&gt; = 2.0来构建项目,那么您应该以这种方式创建一个python 3.4或更高版本的虚拟环境:

sudo apt-get update
sudo apt-get install python3 python3-pip
sudo -H pip3 install virtualenv
mkdir ~/myproject
cd ~/myproject
virtualenv -p `which python3` myprojectenv
source ~/myproject/myprojectenv/bin/activate
python -V

它应输出如下内容:

Python 3.X.Y

现在您可以安装最新版本的Django而不会出现任何错误:

pip install Django
祝你好运,