webentwicklung-frage-antwort-db.com.de

Wie spezifiziere ich die login_required Redirect-URL in Django?

Ich habe eine Ansichtsfunktion:

@login_required
def myview():
    # do something
    # respond something
    pass

Wie kann ich die genaue URL für die Weiterleitung dieser Ansichtsfunktion angeben?

52
Pol

LOGIN_URL in Ihren Einstellungen

Referenz:

72
Bob

sie können dies in Ihrer Ansicht tun, funktioniert gut für mich, ohne in settings.py zu deklarieren

from Django.contrib.auth.decorators import login_required

@login_required(login_url='/example url you want redirect/') #redirect when user is not logged in
def myview(request):
    do something
    return something #returns when user is logged in
62
kartheek

dies aus der Dokumentation sollte hilfreich sein: https://docs.djangoproject.com/de/1.5/topics/auth/default/#the-login-required-decorator

@login_required(login_url='/accounts/login/')
def my_view(request):
    ...
7
vijay shanker

Gehen Sie zu Ihrer setting.py Sie können dies an einer beliebigen Stelle in Ihrer settings.py-Datei hinzufügen, aber ich bevorzuge es, es am unteren Rand zu platzieren. LOGIN_URL = '/ login /'

HINWEIS: '/ login /' ist das URL-Segment, das den Benutzer zur Anmeldeseite bringt. Die vollständige URL ähnelt dieser "myexample.com/login/".

3
Amazing Angelo