Was muss ich noch tun, damit Djangos @login_required Decorator funktioniert?

9

Ich versuche, Djangos Account-System zu verwenden, einschließlich @login_required Decorator. Meine settings.py Datei enthält django.contrib.auth und ich habe eine syncdb gemacht.

%Vor%

Ich sehe das obige, nachdem ich versucht habe, meine Home-Ansicht zu "login_required" zu dekorieren.

Es scheint zu ersticken, weil es auf accounts / login / umgeleitet wird, auf die ich in meiner urls.py nicht vorbereitet bin.

Was kann ich zu urls.py oder anderswo hinzufügen, damit der login_required decorator sein gewohntes Verhalten zeigt?

Danke,

    
JonathanHayward 09.12.2013, 20:33
quelle

1 Antwort

16

Legen Sie die LOGIN_URL in Ihren Einstellungen fest. Der Standardwert ist '/accounts/login/'

Der Dekorator verwendet auch ein optionales Argument login_url :

%Vor%

Und von den Dokumenten :

  

Beachten Sie, dass Sie den Parameter login_url nicht angeben müssen, wenn Sie ihn nicht angeben   Stellen Sie sicher, dass die settings.LOGIN_URL und Ihre Anmeldesicht korrekt sind   damit verbundenen. Fügen Sie beispielsweise unter Verwendung der Standardwerte die folgende Zeile hinzu   Deine URLconf:

%Vor%     
keyser 09.12.2013 20:35
quelle