Python:使用flask创建一个Main Menu页面



我有以下代码:

@app.route('/mainMenu', methods=['GET', 'POST'])
def mainMenu():
    def name():
        cursor = mysql.connection.cursor(MySQLdb.cursors.DictCursor)
        sqlFile = open('name.sql')
        sqlCode = sqlFile.read()
        cursor.execute(sqlCode, (session['name'],))
        user = cursor.fetchone()
        if request.method == 'GET':
            name = request.form["name"]
            cursor = mysql.connection.cursor(MySQLdb.cursors.DictCursor)
            return render_template('mainMenu.html', user=user)
        return redirect(url_for('mainMenu'))
    def age():
        cursor = mysql.connection.cursor(MySQLdb.cursors.DictCursor)
        sqlFile = open('age.sql')
        sqlCode = sqlFile.read()
        cursor.execute(sqlCode, (session['age']))
        user = cursor.fetchone()
        if request.method == 'GET':
            age = request.form["age"]
            cursor = mysql.connection.cursor(MySQLdb.cursors.DictCursor)
            return render_template('mainMenu.html', user=user)
        return redirect(url_for('mainMenu'))
    def location():
        cursor = mysql.connection.cursor(MySQLdb.cursors.DictCursor)
        sqlFile = open('location.sql')
        sqlCode = sqlFile.read()
        cursor.execute(sqlCode, (session['location']))
        user = cursor.fetchone()       
        if request.method == 'GET':
             location = request.form["location"]
             cursor = mysql.connection.cursor(MySQLdb.cursors.DictCursor)
             return render_template('mainMenu.html', user=user)
        return redirect(url_for('mainMenu'))
    def height():
        cursor = mysql.connection.cursor(MySQLdb.cursors.DictCursor)
        sqlFile = open('height.sql')
        sqlCode = sqlFile.read()
        cursor.execute(sqlCode, (session['height']))
        user = cursor.fetchone()       
        if request.method == 'GET':
            height = request.form["height"]
            cursor = mysql.connection.cursor(MySQLdb.cursors.DictCursor)
            return render_template('mainMenu.html', user=user)
        return redirect(url_for('mainMenu'))
     return redirect(url_for('mainMenu'))`

我要做的是创建一个主菜单页面,显示每个用户登录时的姓名,年龄,位置,高度。上面的代码给了我这个错误:

Too many redirects occurred to open "127.0.0.1:5000/mainMenu". This might occur if you open a page that is redirected to open another page which then is redirected to open the original page.

我该如何解决这个问题?

我认为你需要有一个页面(主菜单)调用每个函数并返回每个(名称,年龄,高度和位置)的值,然后呈现你想要的模板,所以你应该只有一个呈现模板或重定向在那里函数被调用后,我希望这是有意义的。

相关内容

最新更新