Джанго:обратная функция завершается сбоем с исключением

StackOverflow https://stackoverflow.com/questions/1129769

  •  13-09-2019
  •  | 
  •  

Вопрос

Я следую руководству по Django и застрял с ошибкой в части 4 руководства.Я добрался до той части, где я пишу Голосовать представление, которое использует обратный ход чтобы перенаправить на другой вид.По какой-то причине обратный запуск завершается сбоем со следующим исключением:

импорт() аргумент 1 должен быть string, а не 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,)))

Когда я удаляю URL-адреса администратора, включаемые из urls.py проекта, т.е.превращение его в:

urlpatterns = patterns('',
    (r'^polls/', include('mysite.polls.urls')),
#(r'^admin/(.*)', include(admin.site.root)),
)

это работает.

Я перепробовал так много всего и не могу понять, что я делаю не так.

Это было полезно?

Решение

Способ включения URL-адресов администратора менялся несколько раз за последние пару версий.Вполне вероятно, что вы используете неправильные инструкции для установленной вами версии Django.

Если вы используете текущую магистральную версию, то есть не официальный релиз, то документация по адресу http://docs.djangoproject.com/en/dev/ это правильно.

Однако, если вы используете версию 1.0.2, вам следует перейти по ссылке в верхней части страницы, чтобы http://docs.djangoproject.com/en/1.0/.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top