У меня есть метод, в котором я проверяю, существует ли пользователь в базе данных, и я хочу передать результаты этого метода другому методу, но я не могу этого сделать, ошибка Я вижу это «TypeError:„BOOL“объект не вызываемая»Не удается вернуть логическое значение из одного метода в другой
Вот мой код:
def userInDb(username, email, password):
cursor = mysql.get_db().cursor()
cursor.execute('SELECT userID from user WHERE userName = %s and email = %s and password = %s', [username, email, password])
data = cursor.fetchone()
if data is None:
return False
else:
True
И это, где я пытаюсь назвать результата метода aboves
@app.route('/showSignIn', methods=["POST"])
def showSignInPost():
username = request.form['inputUserName'] # values received from the UI input by users
email = request.form['inputEmail']
password = request.form['inputPassword']
inDB == userInDb(username, email, password)
if inDB is True:
return render_template('signin.html', signInHeader = "User doesn't exist, please try again")
else:
return render_template('signin.html', signInHeader = "Welcome " + username)
Спасибо в advanc е.
Вам не хватает 'return' в этой ветке' else', но это не привело бы к возникновению ошибки, которую вы в настоящее время имеете. Я бы ожидал 'NameError' для' inDB'. Можете ли вы показать свою полную трассу –
Также вы должны использовать одну строку '=' in 'inDB == userInDb (имя пользователя, адрес электронной почты, пароль) вместо двухзначных – valignatev
@valentjedi yes, я заметил ошибку только после копирования кода. благодаря! – limeThyme