Викторина, которую я пытаюсь построить в django - как заставить ее работать?

Я создаю викторину по отработке иврит-английских слов. Каждый раз компьютер вытаскивает из БД 4 слова rednomiles, а пользователь выбирает из них подходящее слово. Проблема в том, что всегда начинается с того, что request.post.get = None. И отступ выполняется перед None, что означает, что результат неправильный, даже если ответ правильный. Как я могу это исправить?

Фактически сравнение производится еще до того, как пользователь сделал выбор. А после выбора полученный результат обычно оказывается неверным.

Например - в первом раунде (а правильная работа и в следующем раунде будет y) компьютер выбрал x - и теперь я нажимаю на x результат = неправильный x != y..

следующий раунд компьютер выбирает y , и теперь я нажимаю на y (а правильная работа и следующий раунд будет z) результат = неправильно y != z..

def practice(request):
words_list = Words.objects.filter(approved= True)  # Take all the words that approved by the admin
four_options = [random.choice(words_list) for i in range(4)]
x = four_options[0]
z = x.Hebrew_word
random.shuffle(four_options)
word = z[:4]
choice_user = request.POST.get("quiz")
choice_1 = str(choice_user)
choice = choice_1[:4]

if request.method == "POST":
    if choice == word:
        message = f'Correct {choice} == {word}'
        return render(request, "practice.html",
                      {"four_options": four_options, "x": x, "z": z, "choice": choice, 'word': word,"message":message})
    if choice != word:
       message = f'Incorrect {choice} != {word}'
       return render(request, "practice.html",
                      {"four_options": four_options, "x": x, "z": z,  "choice": choice, 'word': word,"message":message})

return render(request, "practice.html", {"four_options": four_options, "z": z, "x": x,"choice":choice ,'word':word})




<div id="word"> {{x.English_word}}</div>



{%for i in four_options%}
<form method="POST">
        {%csrf_token%}

<br/>
<input name = "quiz" type="submit" value={{i.Hebrew_word}} class="btn btn-primary"/>
    </form>
    {%endfor%}

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