3
我按照Django教程,在本教程的第4部分遇到错误。我得到了我正在编写投票视图的部分,它使用反向重定向到另一个视图。出于某种原因,反向失败,出现以下异常:Django:反向函数失败,出现异常
进口()参数1个必须是字符串,而不是instancemethod
目前我的项目的urls.py是这样的:
from django.conf.urls.defaults import *
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
(r'^polls/', include('mysite.polls.urls')),
(r'^admin/(.*)', include(admin.site.root)),
)
和应用程序urls.py是:
from django.conf.urls.defaults import *
urlpatterns = patterns('mysite.polls.views',
(r'^$', 'index'),
(r'^(?P<poll_id>\d+)/$', 'details'),
(r'^(?P<poll_id>\d+)/results/$', 'results'),
(r'^(?P<poll_id>\d+)/vote/$', 'vote'),
)
而且投票的看法是:(我已经简化它仅具有错误的行)
def vote(request, poll_id):
return HttpResponseRedirect(reverse('mysite.polls.views.results', args=(1,)))
当我删除管理员网址,该项目的urls.py包括,即使它成为:
urlpatterns = patterns('',
(r'^polls/', include('mysite.polls.urls')),
#(r'^admin/(.*)', include(admin.site.root)),
)
它的工作原理。
我试过这么多东西,不明白我做错了什么。
天才! :)我所要做的就是将url模式中包含的管理网址更改为: (r'^ admin /(.*)',admin.site.root), 而不是: (r'^ admin/(。*)',包括(admin.site.root)), 谢谢! – arikfr 2009-07-15 06:58:02