это мой файл views.py
from django.shortcuts import render
def home(request):
return render(request, 'home.html',{'name':'irtiza'})
def add(request):
val1 = int(request.GET['num1'])
val2 = int(request.GET['num2'])
res = val1 + val2
return render(request, "result.html",{'result': res})
когда я запускаю этот код, я получаю эту ошибку,
ошибка
затем я попробовал этот код:
def add(request):
val1 = int(request.GET.get(['num1']))
val2 = int(request.GET.get(['num2']))
res = val1 + val2
return render(request, "result.html",{'result': res})
эта ошибка возникает.
введите описание изображения здесь
urls.py file
from django.urls import path
from . import views
urlpatterns = [
path("",views.home,name="home"),
path("add", views.add, name="add")
]
home. html file
{% extends 'base.html' %}
{% block content %}
<h1> hello {{name}} </h1>
<form action="add">
{% csrf_token %}
Enter 1st number : <input type="text" name="num1"><br>
Enter 2nd number : <input type="text" name="num2"><br>
<input type="submit">
</form>
{% endblock %}
Result. html file
{% extends 'base.html' %}
{% block content %}
Result : {{result}}
{% endblock %}
, когда я пытаюсь использовать функцию POST, выдается ошибка, о которой упоминается ниже
from django.shortcuts import render
# Create your views here.
def home(request):
return render(request, 'home.html',{'name':'irtiza'})
def add(request):
val1 = int(request.POST['num1'])
val2 = int(request.POST['num2'])
res = val1 + val2
return render(request, "result.html",{'result': res})
MultiValueDictKeyError в / оных 'num1' Request Метод: GET URL запроса: http://127.0.0.1: 7000 / добавить csrfmiddlewaretoken = t6mVWboKI37vxW3zDbVmpnB3j3g89EzjFhikDDMrB4qVEfrNyqG5pebeXgDLAFE0 & num1 = 3 & num1 = 3 Django Версия: 3.0.3 Тип исключения: MultiValueDictKeyError Значение исключения:
'num1' Расположение исключения: C: \ Users \ irtiza \ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ django \ utils \ datastructures.py в getitem , строка 78 Python Исполняемый файл: C: \ Users \ irtiza \ AppData \ Local \ Continuum \ anaconda3 \ python .exe Python Versi on: 3.7.4
что мне теперь делать, чтобы устранить эту ошибку. Это просто простая функция для добавления двух чисел. Пожалуйста, помогите мне.