Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将代码升级到Django 2或使用类似于;路径“;在Django 1.9中?_Python_Django - Fatal编程技术网

Python 如何将代码升级到Django 2或使用类似于;路径“;在Django 1.9中?

Python 如何将代码升级到Django 2或使用类似于;路径“;在Django 1.9中?,python,django,Python,Django,我使用的是Django 1.9,升级到Django 2.0,如下所示: pip install -U django 检查: python3 -m django --version > 2.1.7 更新django的主要原因是使用了path。据我所知,path在Django 1.9中不可用 因此,我的代码中有这个导入: from django.conf.urls import url from django.urls import path # !!! this line fai

我使用的是Django 1.9,升级到Django 2.0,如下所示:

pip install -U django
检查:

python3 -m django --version
> 2.1.7
更新django的主要原因是使用了
path
。据我所知,
path
在Django 1.9中不可用

因此,我的代码中有这个导入:

from django.conf.urls import url
from django.urls import path     # !!! this line fails !!!
from django.contrib import admin
from my_tests import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path("test", views.test_endpoint, name='test_endpoint')
]
但是,当我运行代码时,它会抛出以下错误:

ModuleNotFoundError: No module named 'django.urls'
看起来它仍然在使用django的旧版本


如何解决这个错误?我应该如何升级到Django 2,或者如何在Django 1.9中使用类似于
路径的东西?

在Django 2之前是这样做的:

from django.conf.urls import include, url

urlpatterns = [
    url(r'^index/$', index_view, name='main-view'),
    url(r'^test/', test_view, name='test_endpoint'),
    url(r'^weblog/', include('blog.urls')),
    ...
]
取自

没有路径模块,因此它会抛出错误

此外,如果不太费力,我建议更新到Django 2.1

这里有一个关于如何做的例子。对于版本2.1,您必须使用以下python版本之一:3.5、3.6、3.7