question.id or question_id both gave the same result.
These are the views. 

from django.shortcuts import get_object_or_404, render
from django.http import HttpResponse, Http404, HttpResponseRedirect
from django.template import loader
from .models import Choice,Question
from django.urls import reverse

# Create your views here.

def index(request):
    latest_question_list = Question.objects.order_by('-pub_date')[:5]
    template = loader.get_template('polls/index.html') 
    context = {
        'latest_question_list': latest_question_list,
    }
    return render(request, 'polls/index.html',context)
    

def detail(request, question_id):
    try:
        question = Question.objects.get(pk=question_id)
    except Question.DoesNotExist:
        raise Http404("Question Does not exist")
    return render(request, 'polls/detail.html', {'question':question})



def results(request, question_id):
    question = get_object_or_404(Question, pk=question_id)
    return render(request, 'polls/results.html', {'question': question})

def vote(request, question_id):
    return HttpResponse("You're voting on question %s." % question_id)
    




On Tuesday, March 14, 2023 at 1:22:25 PM UTC-4 Prosper Lekia wrote:

> Let's see your views.
>
> On Tue, Mar 14, 2023, 14:32 Muhammad Juwaini Abdul Rahman <
> [email protected]> wrote:
>
>> question_id=question.id
>>
>> On Tue, 14 Mar 2023 at 21:22, Nithin Kumar <[email protected]> wrote:
>>
>>> Hi,
>>>
>>> Stuck with this problem 
>>>
>>> https://docs.djangoproject.com/en/4.1/intro/tutorial04/
>>>
>>> NoReverseMatch at /polls/2/Reverse for 'vote' with arguments '(2,)' not 
>>> found. 1 pattern(s) tried: ['polls/<int:question_id/vote/\\Z']
>>>
>>> My detail.html is like this and it is failing at Line 1. 
>>> I checked all solutions online but no luck. 
>>>
>>> <form action="{% url 'polls:vote' question.id %}" method="post">
>>>     {% csrf_token %}
>>>     <fieldset>
>>>         <legend><h1>{{ question.question_text }}</h1></legend>
>>>         {% if error_message %}<p><strong>{{ error_message }}
>>> </strong></p>{% endif %}
>>>         {% for choice in question.choice_set.all %}
>>>             <input type="radio" name="choice" id="choice{{ 
>>> forloop.counter }}" value="{{ choice.id }}">
>>>             <label for="choice{{ forloop.counter }}">{{ 
>>> choice.choice_text }}</label><br>
>>>         {% endfor %}
>>>     </fieldset>
>>>     <input type="submit" value="Vote">
>>>     </form>
>>>
>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "Django users" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected].
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/django-users/d6c40407-64a0-4418-ba9a-39db89b1c1dcn%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/django-users/d6c40407-64a0-4418-ba9a-39db89b1c1dcn%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Django users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>>
> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/django-users/CAFKhtoQ1tfqUempakxY7DHy26utEt3QN1iBbLBM78r5neYM3QQ%40mail.gmail.com
>>  
>> <https://groups.google.com/d/msgid/django-users/CAFKhtoQ1tfqUempakxY7DHy26utEt3QN1iBbLBM78r5neYM3QQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/1d230ed2-73f0-4609-b53b-e620dff5d302n%40googlegroups.com.

Reply via email to