重定向到404页面

时间:2019-06-20 17:50:15

标签: python-3.x flask http-status-code-404

我用sqlite3数据库构建了flask应用程序。我想在其中创建404错误页面。例如,当用户想要转到无效的contest_id时,应将其重定向到错误页面。但是,对于URL /<contest_id>,我只发送问题列表作为参数。因此,当前,只要用户尝试访问无效的contest_id,它就会转到显示空表的网址。

Flask应用程序:

@app.route('/<contest_id>')
def contest_route(contest_id):
    conn = sql.connect("sqlite.db")
    conn.row_factory = sql.Row
    cur = conn.cursor()
    cur.execute("SELECT contest_name FROM contests WHERE contest_id='"+str(contest_id)+"'")
    rows = cur.fetchall()
    try:
        contest_name = rows[0][0]
    except:
        return render_template('problem_index.html')
    cur.execute("SELECT problem_id, problem_name FROM problems WHERE contest_id='"+str(contest_id)+"'")
    rows = cur.fetchall()
    return render_template('problem_index.html', contest_name=contest_name, contest_id=contest_id, problems=rows)
@app.errorhandler(404)
def page_not_found(e):
    return render_template('404.html')

0 个答案:

没有答案