Flaskansicht löst TypeError aus: Das Objekt 'bool' kann nicht aufgerufen werden

7

Ich versuche eine Ansicht in meiner Flask-App zu debuggen, die einen 500-Status mit dem Fehler TypeError: 'bool' object is not callable im Traceback zurückgibt. Die Ansicht ruft login_user von Flask-Login auf und gibt dann True zurück, um anzuzeigen, dass die Anmeldung erfolgreich war.

Ich habe debugged bis app_iter = app(environ, start_response) und die app ist jetzt ein Boolescher Wert mit dem Wert True und nicht mit dem Flask App Objekt.

%Vor% %Vor%     
StefanE 28.01.2014, 12:53
quelle

1 Antwort

21

In Flask muss eine Ansicht einen der folgenden Werte zurückgeben:

  • eine Zeichenfolge
  • ein Response Objekt (oder Unterklasse)
  • ein Tupel von (string, status, headers) oder (string, status)
  • eine gültige WSGI-Anwendung

Flask testet die ersten drei Optionen, und wenn sie nicht passen, wird davon ausgegangen, dass es die vierte ist. Sie haben True zurückgegeben und es wird stattdessen als WSGI-Anwendung behandelt.

Siehe Über Antworten in der Dokumentation.

    
Martijn Pieters 28.01.2014, 13:26
quelle

Tags und Links