werkzeug.exceptions.BadRequestKeyError:400错误的请求:浏览器(或代理)发送了该服务器无法理解的请求。 KeyError:“ id”

时间:2020-03-09 11:35:58

标签: rest api post flask

html页面

   id Row      Date1 n_date
1:  1   1 2018-01-01      1
2:  1   2 2018-01-05      2
3:  1   3 2018-01-21      3
4:  2   4 2018-02-01      1
5:  2   5 2018-03-15      2
6:  3   6 2018-04-01      1

应用代码

{%block title%}Login page{% endblock %}

{%block content%}
<form action = '#' method="post">
   <p>creds:</p>
   <p><input type="number"  placeholder="id"  Id="id" /></p>
   <p><input type="text"  placeholder="nm"  name="nm" /></p>
   <p><input type="submit" value="submit" /></p>
</form>
{%endblock%}

我尝试使用return.form.get('id'),但返回null

有人可以帮我吗

谢谢

3 个答案:

答案 0 :(得分:3)

<p><input type="number"  placeholder="id"  name="id" /></p>

您输入的是ID而不是名称

答案 1 :(得分:2)

当您使用request.form["something"]时,您假设这总是您请求的一部分,我建议您使用request.form.get("something", False)来避免该错误。我希望这能解决您的疑问。

答案 2 :(得分:1)

我遇到了完全相同的问题,但是我的问题是“ SelectField”,更新字段将为“ None”,为避免我只添加了选项值None,如下所示:

<option value="None">None</option>

这解决了我的问题