Django Error: Your URL pattern is invalid. Ensure that urlpatterns is a list of url() instances
Django Error: Your URL pattern is invalid. Ensure that urlpatterns is a list of url() instances
升级到 Django 1.10 后,我 运行 python manage.py runserver
:
出现以下错误
?: (urls.E004) Your URL pattern ('^$', 'myapp.views.home') is invalid. Ensure that urlpatterns is a list of url() instances.
HINT: Try using url() instead of a tuple.
我的urlpatterns
如下:
from myapp.views import home
urlpatterns = [
(r'^$', home, name='home'),
]
为了简化 URL 配置,patterns()
在 Django 1.8 中被弃用,并在 1.10 (release notes) 中被移除。在 Django 1.10 中,urlpatterns
必须是 url()
个实例的列表。不再支持在 patterns()
中使用元组,Django 检查框架将引发错误。
解决这个问题很容易,只需转换任何元组
urlpatterns = [
(r'^$', home, name='home'), # tuple
]
到url()
个实例:
urlpatterns = [
url(r'^$', home, name='home'), # url instance
]
如果你得到以下NameError
,
NameError: name 'url' is not defined
然后将以下导入添加到您的 urls.py
:
from django.conf.urls import url
如果您在 url 模式中使用字符串,例如'myapp.views.home'
,您必须更新这些才能同时使用可调用对象。有关详细信息,请参阅 。
有关 urlpatterns
的更多信息,请参阅 Django URL dispatcher docs。
检查您是否使用过 URL 模式,如下所示:
urlpatterns += (
(r'^404/$', page_not_found_view),
)
改为:
urlpatterns += [
url(r'^404/$', page_not_found_view),
]
升级到 Django 1.10 后,我 运行 python manage.py runserver
:
?: (urls.E004) Your URL pattern ('^$', 'myapp.views.home') is invalid. Ensure that urlpatterns is a list of url() instances.
HINT: Try using url() instead of a tuple.
我的urlpatterns
如下:
from myapp.views import home
urlpatterns = [
(r'^$', home, name='home'),
]
为了简化 URL 配置,patterns()
在 Django 1.8 中被弃用,并在 1.10 (release notes) 中被移除。在 Django 1.10 中,urlpatterns
必须是 url()
个实例的列表。不再支持在 patterns()
中使用元组,Django 检查框架将引发错误。
解决这个问题很容易,只需转换任何元组
urlpatterns = [
(r'^$', home, name='home'), # tuple
]
到url()
个实例:
urlpatterns = [
url(r'^$', home, name='home'), # url instance
]
如果你得到以下NameError
,
NameError: name 'url' is not defined
然后将以下导入添加到您的 urls.py
:
from django.conf.urls import url
如果您在 url 模式中使用字符串,例如'myapp.views.home'
,您必须更新这些才能同时使用可调用对象。有关详细信息,请参阅
有关 urlpatterns
的更多信息,请参阅 Django URL dispatcher docs。
检查您是否使用过 URL 模式,如下所示:
urlpatterns += (
(r'^404/$', page_not_found_view),
)
改为:
urlpatterns += [
url(r'^404/$', page_not_found_view),
]