2016-08-04 3 views
-3

So erstellen Sie separate Login für Admin und Benutzer in Django mit Django integrierten Authentifizierungssystem, dass Benutzer nicht auf Admin-Panel zugreifen und umgekehrt? Wenn Admin Login wird es die Admin-Seite umleiten und wenn Benutzer anmelden wird es die Homepage umleiten .Wie separate Login für Admin und Benutzer in Django erstellen?

+0

Willkommen bei Stackoverflow! Was hast du probiert? Was waren die Ergebnisse im Vergleich zu den erwarteten Ergebnissen? StackOverflow ist kein Code-Writing-Service, und wenn Sie die Schritte kennen, die Sie unternommen haben, können wir Ihnen guten, lehrenden Rat geben (im Gegensatz zum Ratschlag "hier funktioniert Code"). Überprüfen Sie die [Hilfe] (http://stackoverflow.com/help), um mehr über das Stellen guter Fragen zu erfahren. – Delioth

+0

Wenn der Benutzer keinen Mitarbeiter-Account hat, kann er trotzdem nicht auf die Admin-Seite zugreifen. Das Erstellen einer Anmeldeseite ist in den Django-Dokumenten sehr gut dokumentiert: https://docs.djangoproject.com/en/1.9/topics/auth/default/#all-authentication-views – raphv

Antwort

1

Nur Benutzer, die aktiv sind und mit Personal oder Superadmin Status in django Admin-Panel anmelden können http://prntscr.com/c1kvpx

Um ein nicht Admin-Benutzer es zu ermöglichen anmelden wird dringend empfohlen, dass Sie eine neue Login-Seite erstellen.

Verwendung so etwas wie dies aus Ihrer Sicht

from django.contrib.auth import authenticate, login 

def my_view(request): 
    username = request.POST['username'] 
    password = request.POST['password'] 
    user = authenticate(username=username, password=password) 
    if user is not None: 
     if user.is_active: 
      login(request, user) 
      # Redirect to a success page. 
     else: 
      # Return a 'disabled account' error message 
      ... 
    else: 
     # Return an 'invalid login' error message. 
     ... 

Werfen Sie einen Blick auf dieser Seite im doc