>백엔드 개발 >파이썬 튜토리얼 >내 Flask 보기에서 `TypeError: 'bool' 개체를 호출할 수 없습니다`를 반환하는 이유는 무엇입니까?

내 Flask 보기에서 `TypeError: 'bool' 개체를 호출할 수 없습니다`를 반환하는 이유는 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-10 06:02:10943검색

Why Does My Flask View Return a `TypeError: 'bool' object is not callable`?

Flask View TypeError: 'bool' Object Not Callable

Flask에서 뷰는 특정 데이터 유형, 즉 문자열, 응답 객체, 문자열 및 상태 코드의 튜플 또는 유효한 WSGI 애플리케이션. 그러나 부울 값을 반환하면 다음 오류가 발생할 수 있습니다. TypeError: 'bool' 개체는 호출할 수 없습니다.

이는 뷰 함수가 앞서 언급한 데이터 유형 중 하나를 반환하는 대신 부울(True)을 반환할 때 발생합니다. 또는 거짓). Flask는 이 부울을 WSGI 애플리케이션으로 해석하고 호출을 시도하여 오류가 발생합니다.

이 문제를 해결하려면 보기 함수가 지원되는 데이터 유형 중 하나를 반환하는지 확인하세요. 주어진 코드 샘플에서 뷰는 사용자가 성공적으로 로그인한 후 True를 반환합니다.

@app.route('/login', methods=['POST'])
def login():
    username = request.form['username']
    user = User.query.filter_by(username=username).first()

    if user:
        login_user(user)
        return True

    return False

이를 수정하려면 부울 대신 문자열, 응답 개체 또는 튜플을 반환해야 합니다.

@app.route('/login', methods=['POST'])
def login():
    username = request.form['username']
    user = User.query.filter_by(username=username).first()

    if user:
        login_user(user)
        return redirect(url_for('home'))  # Return a string or redirect

    return Response("Login failed", status=401)  # Return a Response object

위 내용은 내 Flask 보기에서 `TypeError: 'bool' 개체를 호출할 수 없습니다`를 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.