Как передать некоторые данные из html в представление django? Может, просто попробовать с помощью javascript?

Я вывожу некоторые вопросы по математике из базы данных Postgres. В упражнениях есть поле с правильными ответами; я передаю его в просмотр. Я хочу сравнить ответы, которые пользователь отправляет через форму, с правильными ответами. Как я могу передать правильные ответы (например, в виде списка) в представление, чтобы проверить, сколько из них правильные? Есть ли способ в Django ou я должен использовать JavaScript?

Это views.py

from django.shortcuts import render
from questoes.models import Questao
from .forms import CHOICES
from django.forms import formset_factory
# Create your views here.

#I'd like to use this function to compare the answers. In this part I'm getting the responses from the form 
def get_respostas(request):
    form = CHOICES(request.POST)
    if request.method=='POST':
        form0 = request.POST['form-0-NUMS']
        form1 = request.POST['form-1-NUMS']
        form2 = request.POST['form-2-NUMS']
        form3 = request.POST['form-3-NUMS']
        form4 = request.POST['form-4-NUMS']
# Id like to test here.  
    return render(request,"provas/teste.html")


def prova(request):
    questoes = Questao.objects.order_by('?')[:5]
    gabarito = []
    for q in questoes:
        gabarito.append(q.gabarito)
    form = CHOICES
    respostaFormSet = formset_factory(CHOICES, extra=5)

    if request.method=='POST':
        dados = {
            'formset': formset,
            'questoes': questoes, 
            'form':form(request.POST),
            'gabarito':gabarito
        }
        return render(request,'provas/prova.html', dados)
    else:
        dados = {
            'formset': formset,
            'questoes': questoes, 
            'form':form,
            'gabarito':gabarito
        }
        return render(request,'provas/prova.html', dados)

это prova.html


{% if questoes %}
<div class="container px-4 py-5">
    {% for questao in questoes %}
    <div class="bg-light m-3 p-5">
            <h3>Questão {{ forloop.counter }}</h1>
                <div id="layout_questao">
                    {{questao.texto|safe}}
                </div>        
    </div>   
    {% endfor %}

    <div class="bg-light m-3 p-5">
        <h2>Marque suas repostas:</h1>
            <br>
        <form action="{% url 'get_respostas' %}" method="POST">
            {% csrf_token %}
            {{ formset.management_data }}
            {{formset.as_p  }}
            <br>
            <br>
            <div class="d-flex justify-content-center"> 
                <input class="btn btn-secondary" type="submit" value="Enviar Respostas">
            </div>
        </form>

    </div>
    {% endif %} 
</div>

Вернуться на верх