2017-03-01 3 views
0

Meine Frage hier ist, ohne Model oder forms.Form können wir Form Werte auf einreichen mit Django request Objekt zu erhalten.Erhalten Sie Formularwerte in Python mit Django Framework

Hier ist ein kleines Beispiel, um das Problem zu erklären.

HTML-Code:

<form action="/login/" method="post"> 
    {% csrf_token %} 
    <input type="text" id="USERNAME" class="text" value="USERNAME" > 
    <input type="password" id="Password" value="Password" > 
    <div class="submit"> 
     <input type="submit" onclick="myFunction()" value="LOGIN"> 
    </div> 
    <p><a href="#">Forgot Password ?</a></p> 
</form> 

views.py Code:

def dologin(request): 
    print('i am in do login') 
    print(request.method) 
    print(request.POST) 
    for key, value in request.POST.iteritems(): 
     print(key , value) 

    return render(request,'webapp/login.html') 

Also hier meine Schlüsselwerte sind immer leer. Ich habe gelernt und in der Lage, HTML-Formulare unter Verwendung Model und forms:Form zu erstellen. Aber um mehr Stiländerungen hinzuzufügen, muss ich dieses forms:Form Objekt zu HTML definierter Form abbilden.

Vielen Dank im Voraus.

Antwort

1

einen Namen

<form action="/login/" method="post"> 
    {% csrf_token %} 
    <input type="text" id="USERNAME" class="text" name="USERNAME" value="USERNAME" > 
    <input type="password" id="Password" value="Password" name="Password" > 
    <div class="submit"> 
     <input type="submit" onclick="myFunction()" value="LOGIN"> 
    </div> 
    <p><a href="#">Forgot Password ?</a></p> 
</form> 
+0

dammmm .... Mann. Wie zur Hölle habe ich das vermisst. – JBaba

0

HTML-Formularelemente benötigen immer ein name-Attribut, andernfalls hat der Browser keine Möglichkeit, sie an das Backend zu senden. Dieses Attribut ist der Schlüssel im POST-Diktat.

Beachten Sie, dass jede Formatierung, die Sie mit HTML alleine machen können, auch mit Django-Formularen möglich ist; Sie sollten sie wirklich in den meisten Fällen verwenden.

0

Bitte fügen Sie das HTML-Attribut für jede Form Komponente jeden Eingang zuweisen mit Namen.

Verwandte Themen