Две кнопки в форме для отображения словаря не работают
Я хочу использовать две кнопки в шаблонной форме и запускать два действия в функции. Когда я опускаю if только с кнопкой, django работает, но когда я добавляю if в коды для выполнения двух действий, он перестает работать. в представлении: def result(request): num1 = int(request.GET["num1"]) num2 = int(request.GET["num2"])
if 'add' in request.POST:
res = num1 + num2
if 'sub' in request.POST:
res = num1 - num2
return render(request, 'home/result.html', {'result': res})
в шаблоне с именем clt
<form action="result" >
Enter 1st number : <input type="text" name="num1"><br>
Enter 2st number : <input type="text" name="num2"><br>
<button type="submit" name="subscribe">Subscribe</button>
<button type="submit" name="unsubscribe">Unsubscribe</button>
</form>
в шаблоне с именем result результат {{ result }}
В приведенном выше коде ваш тест 'if' не соответствует имени, которое вы дали кнопкам. Попробуйте:
if 'subscribe' in request.POST:
res = num1 + num2
if 'unsubscribe' in request.POST:
res = num1 - num2
В вашем коде нарушено форматирование, похоже, что вы используете GET для получения двух переменных. Если это работает, то нет проблем, но обычно данные, размещенные в форме, должны быть получены с помощью request.POST.get['num1']