Warum check_email Fehler, ich weiß nicht, wie esPython Unbound Lokale Variabel
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' == "[email protected]":
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)
Das macht keinen Sinn für mich zu beheben, wie ich auch klar check_email als einer der ersten Zeilen meines Codes initialisieren, und ich Ich habe es als global bezeichnet, um sicher zu gehen und sicherzustellen, dass es im Rahmen all meiner Methoden liegt.
Fehler: UnboundLocalError: lokale Variable 'check_email' vor der Zuweisung referenziert
Ich weiß auch nicht, bis ich den tatsächlichen Fehler sehe ... – Julien
UnboundLocalError: Lokale Variable 'check_email' referenziert vor Zuweisung –
Identifizieren * wo * der Fehler auftritt, ist normalerweise auch ziemlich hilfreich. –