使用Flask获得400错误

时间:2014-01-12 21:40:18

标签: python flask

这是基于官方文档中的Flask教程。我尝试添加删除选项,以便删除我不想要的帖子。我的if语句引起了错误,但我不知道为什么。

除了解决我的按钮问题,我还有其他一些问题。

为什么要将表单的操作设置为"。"

为什么我只能设置要删除的按钮的名称并忽略该值? (即如果request.form ['删除']:)

如果我想指定我删除哪个帖子,那么将post-id添加到此删除页面的最佳方法是什么(我的测试数据库有一个id列)?

我的模板:

{% for message in get_flashed_messages() %}
    <div class=flash>
        {{ message }}
    </div>
{% endfor %}

<form action="." method="POST">
    <input type="submit" name="button" value="Delete">
    <a href="{{ url_for('show_entries') }}">Cancel</a>
</form>

我的.py文件:

@app.route('/delete', methods=['GET', 'POST'])
def remove_entry():
    if request.form['button'] == 'Delete':
        flash("Hello world")

        # delete post
        #g.db.execute('DELETE FROM entries (id) VALUES (?)',something])
        #g.db.commit()
        #return redirect(url_for('show_entries'))

    return render_template('delete.html')

1 个答案:

答案 0 :(得分:1)

  

为什么我不能只设置要删除的按钮的名称并忽略该值? (即如果request.form ['delete']:)

实际上你需要区分GET和POST请求,如下所示:

if request.method == 'POST':
    flash("Hello world")