Django教程,获取:在/ admin /参数中的TypeError为reversed()必须是一个序列

时间:2015-08-14 16:49:27

标签: python django-1.8

我正在通过版本1.8的django教程工作,我收到一个错误,我被困在了,似乎无法弄明白。我以为我几乎都在关注T.

我设置了以下树:

. ├── dj_project │   ├── __init__.py │   ├── __init__.pyc │   ├── settings.py │   ├── settings.pyc │   ├── urls.py │   ├── urls.pyc │   ├── wsgi.py │   └── wsgi.pyc ├── manage.py └── polls ├── admin.py ├── admin.pyc ├── __init__.py ├── __init__.pyc ├── migrations │   ├── 0001_initial.py │   ├── 0001_initial.pyc │   ├── __init__.py │   └── __init__.pyc ├── models.py ├── models.pyc ├── tests.py ├── urls.py ├── urls.pyc ├── views.py └── views.pyc

并且正如 polls / urls.py 的教程中那样:

from django.conf.urls import url

from . import views

urlpatterns = {
    url(r'^$', views.index, name='index'),
}

和我的 dj_project / urls.py

from django.conf.urls import include, url
from django.contrib import admin

urlpatterns = [

    url(r'^polls/', include('polls.urls')), 
    url(r'^admin/', include(admin.site.urls)),

]

并在 polls / views.py 我有:

from django.shortcuts import render
from django.http import HttpResponse

def index(request):
    return HttpResponse("is there something here?")

所以当我转到<mysite>/polls时,我看到&#34;这里有什么东西&#34;,但如果我转到<mysite>/admin,我会收到错误:TypeError at /admin/ argument to reversed() must be a sequence。如果我从dj_project/urls.py中的urlpatterns中移除民意调查,则管理员会很好。

可能是什么问题?我似乎无法弄明白。

1 个答案:

答案 0 :(得分:23)

polls / urls.py 文件中, 你将urlpatterns声明为dict,它必须是一个列表。

更改

urlpatterns = {
    url(r'^$', views.index, name='index'),
}

为:

urlpatterns = [
    url(r'^$', views.index, name='index'),
]