从HTML页面请求GET对象时,Django- MultiValueDictKeyError

时间:2018-10-14 07:17:30

标签: python django python-3.x django-forms django-views

从HTML提取数据时遇到问题。

在views.py

def PrimeNumber(request):
    number = request.GET['number']
    return render(request , 'PrimeNumber.html',{'number':number})

在html文件中

<form action = "{% url 'PrimeNumber' %}">
    <label for="number"><b>Enter the number : </b></label>
    <input type="text" placeholder="Enter Number" name= "number" required>
</form>

我遇到的错误

  

异常类型:MultiValueDictKeyError
  异常值:“'数字'”

我不知道这里发生了什么。由于我是python的初学者,因此我在stackoverflow上经历了许多答案,但不了解如何在自己的代码上实现它。 请告知是否缺少任何信息。

1 个答案:

答案 0 :(得分:2)

将获取number的方法更改为:

number = request.GET.get('number')

如果要通过'number'作为默认值,请使用以下行:

number = request.GET.get('number', 0)

注意:如果在request.GET.get('number')上找不到此参数且未设置默认值,则None返回request.GET