我在 Django 1.11 中有一个弃用警告:
RemovedInDjango20Warning: Passing a 3-tuple to django.conf.urls.include() is deprecated. Pass a 2-tuple containing the list of patterns and app_name, and provide the namespace argument to include() instead.
url(r'^admin/', include(admin.site.urls))
在 Django 2.0 中,这给出了错误:
django.core.exceptions.ImproperlyConfigured: Passing a 3-tuple to include() is not supported.
Pass a 2-tuple containing the list of patterns and app_name, and provide the namespace argument to include() instead.
我应该如何更改 url(r'^admin/', include(admin.site.urls))
?我试图查看文档,但我不知道……
这是我的 urls.py:
from django.conf.urls import include, url
from django.contrib import admin
admin.autodiscover()
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^admin/django-ses/', include('django_ses.urls')),
url(r'^api/1.0/', include('feedcrunch_api_v1.urls')),
url(r'^oauth/', include('oauth.urls')),
url(r'^@(?P<feedname>\w+)/admin/', include('feedcrunch_rssadmin.urls')),
url(r'^@(?P<feedname>\w+)/', include('feedcrunch_rssviewer.urls')),
url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')),
url(r'', include('feedcrunch_home.urls')),
]
原文由 Jonathan DEKHTIAR 发布,翻译遵循 CC BY-SA 4.0 许可协议
从 Django 1.9 开始, 包含管理 url 的旧方法已弃用。您应该将
admin.site.urls
直接传递给url()
,而不调用include()
: