Flask表单提交:request.stream.read()包含数据,但request.form没有

时间:2013-08-16 08:06:37

标签: flask form-submit

我正试图提交一份最简单的表格:

<form class="form-search" action='/render' method="POST">
    <input name='test' type="text" class="input-medium search-query">
    <button type="submit" class="btn">Search</button>
</form>

(那是Bootstrap,我刚从其网站上做了一个原始的例子)

...有史以来最简单的处理程序:

@app.route('/render', methods=['POST', 'GET'])
def render():
    if request.method == 'POST':
        print request.stream.read()
        print request.data
        print request.form
    return 'ok'

这就是我所拥有的:

>> test=1
>> 
>> ImmutableMultiDict([])

我真的很困惑:这似乎很简单。我已经看到了几个相同的问题 - 问题是缺少输入'name'属性,但这似乎是不同的情况。 感谢。

1 个答案:

答案 0 :(得分:2)

哦,我已经明白了。看起来当您执行request.stream.read()时,它会清空您的request.form词典。