-1

Ich versuche, eine einfache App zu schreiben, die Benutzer in Django anmelden lassen. Ich habe eine hübsche Bootstrap-Login-Vorlage heruntergeladen, aber ich kann sie nicht mit meinem Django-Projekt verbinden. Wenn ich einreichen klicken, passiert nichts, dann ist hier die Ansicht:Daten aus Formular in Django nicht funktioniert

def login_view2(request): 
if request.method == 'POST': 
    print("POST METHOD") 
    form = LoginForm(request.POST) 
    if form.is_valid(): 
     print("FORM VALID") 
     uname = form.cleaned_data['username'] 
     pword = form.cleaned_data['password'] 
     user = authenticate(username=uname, password=pword) 
     if user is not None: 
      if user.is_active: 
       login(request, user) 
       return HttpResponseRedirect('/') 
      else: 
       print("The account has been disabled!") 
     else: 
      print("The username and password were incorrect!") 
else: 
    print("LOGIN FORM SHOWN") 
    form = LoginForm() 
    return render(request, 'login2.html', {'form': form}) 

und hier ist die Form

<form id="login-form" action="login2/" method="post"> 
 
    {% csrf_token %} 
 
    <div class="modal-body"> 
 
    <div id="div-login-msg"> 
 
     <div id="icon-login-msg" class="glyphicon glyphicon-chevron-right"></div> 
 
     <span id="text-login-msg">Type your username and password.</span> 
 
    </div> 
 
    <input id="login_username" class="form-control" type="text" placeholder="Username" required> 
 
    <input id="login_password" class="form-control" type="password" placeholder="Password" required> 
 
    </div> 
 

 
    <div class="modal-footer"> 
 
    <div> 
 
     <input type="submit">Login</input> 
 
    </div> 
 
    </div> 
 
</form>

Vielen Dank im Voraus!

+0

Nein, das ist nicht wie Sie eine Frage stellen. Sie posten die * relevanten * Teile Ihres Codes in der Frage selbst. –

+0

@DanielRoseman Sie haben Recht, tut mir leid. Ich habe gerade die Frage bearbeitet. – Blademaster

Antwort

0

Sie haben Ihren HTML-Feldern kein name-Attribut zugewiesen, sodass der Browser keine Daten an den Server senden kann.

Sie müssen auch Fehler anzeigen, wenn das Formular nicht gültig ist, mit {{ form.errors }}.

+0

Vielen Dank. – Blademaster

Verwandte Themen