@login_required Problem in der Flasche App

8

Ich habe einen Blueprint erstellt, der die Authentifizierung behandelt. Dieser blaue Druck verwendet Flask-Login. Und hat folgendes, sowie mehr Code nicht gezeigt.

In der Blaupause habe ich folgendes:

%Vor%

Dann habe ich eine kleine App, der ich eine Authentifizierung hinzufügen möchte.

Kleine App

%Vor%

Jetzt weiß ich, dass @login_required funktioniert, denn wenn ich den Browser öffne und zu localhost: 8000 gehe, muss ich mich anmelden.

Wenn ich jedoch zu localhost: 8000 / profile gehe, wird der login_required decorator niemals ausgelöst. Ich bekomme dadurch einen Fehler, da kein aktueller Benutzer vorhanden ist.

Warum sollte @login_required im Blueprint und nicht in der App funktionieren, selbst wenn ich die gleichen Leerzeichen beibehalten möchte?

    
steve 18.02.2015, 03:03
quelle

2 Antworten

16

Sie müssen die Reihenfolge der Dekorierer ändern. Zitieren Sie die Flask-Dokumentation :

  

Wie würden Sie diesen Dekorateur jetzt benutzen? Wende es als innerste an   Dekorator zu einer Ansichtsfunktion. Bei der Anwendung weiterer Dekorierer immer   Beachten Sie, dass der route () Decorator der äußerste ist:

%Vor%
    
syntonym 18.02.2015, 03:12
quelle
0
%Vor%     
Ana Pinto 05.07.2016 11:10
quelle