Python未绑定局部变量b

2024-04-18 07:28:34 发布

您现在位置:Python中文网/ 问答频道 /正文

为什么我的支票\电子邮件错误,我不知道如何修复它

def getLoginDetails():
    with sqlite3.connect('database.db') as conn:
        cur = conn.cursor()
        if 'email' not in session:
            loggedIn = False
            firstName = ''
            noOfItems = 0
        else:
            loggedIn = True
            cur.execute("SELECT userId, firstName FROM users WHERE email = '" + session['email'] + "'")
            userId, firstName = cur.fetchone()
            if 'email' == "admin@shop.com":
                check_email = True
            else:
                check_email = False
            cur.execute("SELECT count(productId) FROM kart WHERE userId = " + str(userId))
            noOfItems = cur.fetchone()[0]
    conn.close()
    return (loggedIn, firstName, noOfItems, check_email)

@app.route("/")
def root():
    loggedIn, firstName, noOfItems, check_email = getLoginDetails()
    with sqlite3.connect('database.db') as conn:
        cur = conn.cursor()
        cur.execute('SELECT productId, name, price, description, image, stock FROM products')
        itemData = cur.fetchall()
        cur.execute('SELECT categoryId, name FROM categories')
        categoryData = cur.fetchall()
    itemData = parse(itemData)
    return render_template('home.html', itemData=itemData, loggedIn=loggedIn, firstName=firstName, noOfItems=noOfItems, categoryData=categoryData, check_email=check_email)

这对我来说毫无意义,因为我清楚地将check\u email初始化为我代码的第一行,我甚至将其标记为global只是为了安全,并确保它在我所有方法的范围内

错误:UnboundLocalError:分配前引用了局部变量“check\u email”


Tags: fromexecuteemaildefcheck错误firstnameconn