Bonjour,

Je suis débutant en Django et je souhaite créer une page web qui réalise un quiz.
1 image est projeté avec 4 réponses en radio bouton et un bouton valider.

Comment fait t'on pour récupéré depuis un template/gabarie le radio bouton choisi par l'utilisateur ?
J'arrive à récupérer des données à partir d'un formulaire mais pas d'un template sauf que je ne sais pas envoyer mes questions dans models à mon formulaire.
Bref j'ai besoin d'aide.


Le template
Code twig : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    <!--la question-->
    <div class="Thequestion">
        <h3>{{ mesQuestions.question_text }} </h3>
    </div>
 
    <!--les boutons radios-->
 
    <form action='' method="post">
        {% csrf_token %}
        {{ form.as_p }}
 
        <div class="Theoption">
            <input type="radio" id="{{mesQuestions.option1}}" value="{{mesQuestions.option1}}" ><label class="finition">{{mesQuestions.option1}}</label>
            <input type="radio" id="{{mesQuestions.option2}}" value="{{mesQuestions.option2}}" ><label class="finition">{{mesQuestions.option2}}</label>
            <input type="radio" id="{{mesQuestions.option3}}" value="{{mesQuestions.option3}}" ><label class="finition">{{mesQuestions.option3}}</label>
            <input type="radio" id="{{mesQuestions.option4}}" value="{{mesQuestions.option4}}" ><label class="finition">{{mesQuestions.option4}}</label>
        </div>
        <input type="submit" value="Valider" />
    </form>

La view qui je pense est problématique...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    try:
        lecontext = QuestionOliv.objects.get(id=1)
    except QuestionOliv.DoesNotExist:
        raise Http404
    return render(request, 'test.html', {'mesQuestions': lecontext})
 
 
    option1 = request.POST.get('mesQuestions.option1')
    option2 = request.POST.get('mesQuestions.option2')
 
 
    #  sujet = form.cleaned_data['sujet']
    #  message = form.cleaned_data['message']
    objSave = QuestionOliv(option1=option1, option2=option2)
    objSave.save()
Le models
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
class QuestionOliv(models.Model):
    question_text = models.TextField(max_length=200, default="")
    option1 = models.CharField(max_length=50, default="")
    option2 = models.CharField(max_length=50, default="")
    option3 = models.CharField(max_length=50, default="")
    option4 = models.CharField(max_length=50, default="")
    answer = models.CharField(max_length=50, default="")
 
    def __str__(self):
        return self.question_text
Étant nouveau Je pense avoir des problèmes de logique et de compréhension...

Je vous remercie pour votre aide
Ma version de Django
2.2.4