Python 如何根据用户在flask中选择的按钮显示不同表中的数据?

Python 如何根据用户在flask中选择的按钮显示不同表中的数据?,python,html,flask,flask-sqlalchemy,Python,Html,Flask,Flask Sqlalchemy,我有两个名为admin和user的表,看起来像这样 table name: admin name|id|password table name: user name|id|email|password 我的html文件中有两个按钮,分别是查看用户和查看管理员。我想在单击view admin时返回admin表的所有内容,在单击view user时返回user表的所有内容 这就是我的html文件的外观 <a href="{{ url_for('view_credentials')}}"&g

我有两个名为admin和user的表,看起来像这样

table name: admin
name|id|password

table name: user
name|id|email|password
我的html文件中有两个按钮,分别是
查看用户
查看管理员
。我想在单击
view admin
时返回
admin
表的所有内容,在单击
view user
时返回
user
表的所有内容

这就是我的html文件的外观

<a href="{{ url_for('view_credentials')}}"> <input type="submit"  name="submit_button" value="View Admin">

<a href="{{ url_for('view_credentials')}}"> <input type="submit"   name="submit_button" value="View Tutor">

    {% for item in output %}
    <tr>
        <td>{{item[0]}}</td>
        <td>{{item[1]}}</td>
        <td>{{item[2]}}</td>
    </tr>
    {% endfor %}

@app.route("/view_credentials", methods = ["POST", "GET"])
def view_credentials():

    if request.method == "GET":
        if request.form['submit_button'] == 'View Admin':
            output = db.execute('SELECT * FROM admin').fetchall()
            return render_template("adminDashboard.html", output=output)
        elif request.form['submit_button'] == 'View Tutor':
            output = db.execute('SELECT * FROM login_signup_tutor').fetchall()
            return render_template("adminDashboard.html", output=output)

我收到以下错误:
HTTPException.wrap..newcls:400错误请求:keyrerror:“提交按钮”

我是烧瓶的初学者,试图了解周围的事物。请让我知道哪里出了问题,我应该纠正什么。谢谢。

请注意使用request.form.get()代替request.form[]。如果submit_按钮不存在,则不会出现错误404

将python文件更改为:

@app.route("/view_credentials", methods = ["POST", "GET"])
def view_credentials():

    if request.method == "GET":
        if request.form.get('submit_button') == 'View Admin':
            output = db.execute('SELECT * FROM admin').fetchall()
            return render_template("adminDashboard.html", output=output)
        elif request.form.get('submit_button') == 'View Tutor':
            output = db.execute('SELECT * FROM login_signup_tutor').fetchall()
            return render_template("adminDashboard.html", output=output)
之后,您将无法获得request.form.get(“提交”按钮)的值,然后将“提交”按钮的值更改为“提交”,并在routes.py中进行类似的更改,如:request.form.get(“提交”)

这对我有用