python - 从烧瓶中的表单获取数据的问题
问题描述
我基本上是在创建一个烧瓶网络应用程序,它从用户那里获取用户名并获取他/她的 codeforces 数据我在从表单中提取电子邮件 ID 时遇到问题。我得到的是用户名,但不是电子邮件 ID。它们都在 html 文件中的一个表单标记中。
浏览器错误:werkzeug.exceptions.HTTPException.wrap..newcls: 400 Bad Request: KeyError: 'email-id'
<form method="POST">
<div class="field">
<label class="label">Username:</label>
<div class="control">
<input class="input" type="text" placeholder="Enter Codeforces username" name="username" value="{{user.handle}}"></input>
</div>
</div>
<div class="has-text-centered">
<input class="button is-link" name="get-info" type="submit" value="Get Info">
</div>
<div class="field">
<label class="label">EMail id:</label>
<div class="control">
<input class="input" type="text" placeholder="Enter mail id" name="email-id" value="">
</div>
</div>
<div class="has-text-centered">
<input class="button is-link" name="get-mail" type="submit" value="Get Mail">
</div>
</form>
@app.route('/',methods=['GET','POST'])
def index():
if request.method == 'POST':
username = request.form['username']
email_id = request.form['email-id']
print(email_id)
print(username)
解决方案
编辑:
自从我第一次回复以来,您在示例中发布了更多代码。您需要括号而不是方括号,并将“.get”添加到方法中。
改变..
username = request.form['username']
至..
username = request.form.get('username')
推荐阅读
- c# - 页面导航到 mvvm 时未执行 ViewModel 构造函数
- azure - 如何使用 Powershell 从订阅中获取 SQL MI 的数据大小
- dart - 如何在 Dart 中扩展函数?
- sql - 任何人都可以在没有游标的情况下编写此查询吗?
- r-markdown - Tufte RMarkdown 文档 - 自包含选项?
- android - LogCat android unity3d 游戏崩溃
- c++ - 在 C++ 中加快大文件写入磁盘的速度
- ssl - 哪个先出现 - 创建 nginx 站点 `.conf` 文件或运行 `certbot-auto certonly`?
- javascript - 当值字符串包含空格时,JavaScript 对象数组未获取
- c# - 如何使用 post 方法将 xml 文件从 postman 传输到 web api 并将其返回?