недопустимый литерал для int ()с основанием 10 :'на' Python -Django

я изучаю django из официального учебника по django. и я получаю эту ошибку, когда голосую за что-то из формы. это вызвано -, вероятно, -функцией голосования в views.py

вот моя функция views.py/vote:

def vote(request,poll_id):
    p=get_object_or_404(Poll, pk=poll_id)
    try:
            selected_choice = p.choice_set.get(pk=request.POST['choice'])
    except (KeyError, Choice.DoesNotExist):
            return render_to_response('polls/detail.html', {'poll':p,
                                                            'error_message' : "didint select anything ",}, context_instance= RequestContext(request))

    else:
            selected_choice.votes += 1
            selected_choice.save()
            return HttpResponseRedirect(reverse('polls.views.results', args=(p.id,)))

и это экран сообщения об ошибке:

**ValueError at /polls/2/vote/

invalid literal for int() with base 10: 'on'**

Request Method: POST Request URL: 127.0.0.1:8000/polls/2/vote/

Django Version: 1.4 Exception Type: ValueError Exception Value: invalid literal for int() with base 10: 'on' Exception Location: /usr/local/lib/python2.7/dist-packages/django/db/models/fields/init.py in get_prep_value, line 537

а вот мои опросы/urls.py:

from django.conf.urls import patterns, include, url

urlpatterns = шаблоны ('polls.views',

    url(r'^$', 'index'),
    url(r'^(?P<poll_id>\d+)/$','detail'),
    url(r'^(?P<poll_id>\d+)/results/$','results'),
    url(r'^(?P<poll_id>\d+)/vote/$','vote'),

)

а вот проект/urls.py:

from django.conf.urls import patterns, include, url

urlpatterns = шаблоны ('polls.views',

    url(r'^$', 'index'),
    url(r'^(?P<poll_id>\d+)/$','detail'),
    url(r'^(?P<poll_id>\d+)/results/$','results'),
    url(r'^(?P<poll_id>\d+)/vote/$','vote'),

)

7
задан alix 8 July 2012 в 23:38
поделиться