Django 2.1 startproject引发奇怪的错误

时间:2018-08-07 17:44:17

标签: python django django-admin

我正在尝试在Python 3.4上的Django 2.1中启动我的第一个应用程序。这是第一次使用此版本,以前我仅使用Django 1.10和Python 2.7。 Ubunutu 14.04上的所有内容

我创建了一个virtualenv,主要是按照本教程进行的:https://www.digitalocean.com/community/tutorials/how-to-install-python-3-and-set-up-a-local-programming-environment-on-ubuntu-16-04

但是我自己做了些微的更改,因为首先出现了一个语言环境问题,并像这样解决了该问题:

sudo locale-gen "en_US.UTF-8"

之后,我像这样更改了别名:

alias python=python3
alias pip=pip3

仅此而已。安装django == 2.1并运行后:

django-admin.py start project myproject

出现此错误:

Traceback (most recent call last):
    File "/home/ubuntu/workspace/skw/bin/django-admin", line 7, in <module>
        from django.core.management import execute_from_command_line
    File "/home/ubuntu/workspace/skw/lib/python3.4/site-packages/django/core/management/__init__.py", line 11, in <module>
        from django.conf import settings
    File "/home/ubuntu/workspace/skw/lib/python3.4/site-packages/django/conf/__init__.py", line 18, in <module>
        from django.utils.functional import LazyObject, empty
    File "/home/ubuntu/workspace/skw/lib/python3.4/site-packages/django/utils/functional.py", line 12
        return _curried_func(*args, *moreargs, **{**kwargs, **morekwargs})
                            ^

在django中的这个functional.py文件中,我的棉绒恰恰在第12行显示语法错误……但是不确定是否相关,因为我还没有将语法更改为python3。

因此,我无法启动新项目,该如何解决?

编辑: 看来它将在Python2中而不是在3中运行。但是,当我尝试这样做时:

python3 path/bin/django-admin.py startproject myproject

结果完全相同。我也使用python3.4做到了这一点,还是一样。同时,已经花费了几个小时,并且创建和删除了大约6个工作区。这可能是一些基本的东西,我太累了看不到,但是呢?

python -V
Python 3.4.3

python3 -V 
Python 3.4.3

python3.4 -V
Python 3.4.3

查看python-v时,django导入工作没问题。

2 个答案:

答案 0 :(得分:4)

Python 3.4不支持Django 2.1-仅3.5、3.6和3.7。

发行说明:https://docs.djangoproject.com/en/2.1/releases/2.1/

答案 1 :(得分:3)

您使用的python版本是3.4.3。但是django==2.1将安装Django 2.1。

  

Django 2.1支持Python 3.5、3.6和3.7。 Django 2.0是最后一个支持Python 3.4的版本。我们强烈推荐,并且仅正式支持每个系列的最新版本。

来源 Django 2.1 release notes

因此,您需要进行安装才能解决

  

pip3 install Django == 2.0.0