2017-10-11 2 views
0

Kennwörter können nicht in Form eingegeben werden. Ich mache Benutzerregistrierungswebsite. ich in views.pyKennwörter können nicht in Form eingegeben werden

def regist(request): 
    form = RegisterForm(request.POST or None) 
    context = { 
     'form': form, 
    } 
    return render(request, 'registration/regist.html', context) 

in forms.py

class RegisterForm(UserCreationForm): 
    class Meta: 
     model = User 
     fields = ('username', 'email',) 
    def __init__(self, *args, **kwargs): 
     super(RegisterForm, self).__init__(*args, **kwargs) 
     self.fields['username'].widget.attrs['class'] = 'form-control' 
     self.fields['email'].widget.attrs['class'] = 'form-control' 
     self.fields['password1'].widget.attrs['class'] = 'form-control' 
     self.fields['password2'].widget.attrs['class'] = 'form-control' 

in regist.html

<main> 
 
        <div class="container"> 
 
        <div class="heading col-lg-6 col-md-12">
      
 
         <h1>WEB SITE</h1>
      
 
        </div> 
 
       
 
        
     <div class="heading col-lg-6 col-md-12">
      
 
        <h2>NEW REGISTRATION</h2> 
 
       
 
        <form class="form-horizontal" method="POST">
      
 
         <div class="form-group-lg">
      
 
         <label for="id_username">USER NAME</label> 
 
         
     {{ regist_form.username }}
      
 
         </div>
     
      
 
         <div class="form-group-lg">
      
 
         <label for="id_email">EMAIL</label> 
 
         
      {{ regist_form.email }} 
 
         </div>
     
      
 
         <div class="form-group-lg">
      
 
         <label for="id_password">PASSWORD</label>
      
 
         {{ regist_form.password1 }}
      
 
         </div>
     
      
 
         <div class="form-group-lg"> 
 
         <label for="id_password">PASSWORD(CONFROMATION)</label>
      
 
         {{ regist_form.password2 }} 
 
         <p class="help-block">{{ regist_form.password2.help_text }}</p>
      
 
         </div>
     
      
 
         <div class="form-group-lg"> 
 
         <div class="col-xs-offset-2"> 
 
         <button type="submit" class="btn btn-primary btn-lg">SUBMIT</button>
      
 
         <input name="next" type="hidden"/>
      
 
         </div> 
 
         </div> 
 
         {% csrf_token %}
      
 
        </form>
      
 
        </div> 
 
        </div> 
 
     </main>

schrieb

Ich kann wirklich nicht verstehen, warum nur Passwörter können nicht in Form eingegeben werden.Username & Email kann getippt werden. Da ich keine Passwörter eingeben kann, kann ich die SEND-Taste nicht setzen. Wie soll ich das beheben?

+0

Was meinen Sie, wenn Sie sagen "Passwörter können nicht eingegeben werden"? Die Passworteingabefelder fehlen insgesamt? Sie sind vorhanden, können aber keine Eingaben annehmen. Bitte erläutern. –

+0

Ich bezweifle, dass das das Problem ist, aber ich bemerke, dass beide Passwortfelder Beschriftungen mit 'for =" id_password "haben, aber Sie scheinen keine Eingabefelder mit dieser ID zu haben. –

+0

@JohnGordon Ich kann alle Felder (Benutzername & E-Mail & Password1 & Password2) schreiben. Aber wenn ich SUBMIT-Taste setze, Password1 & Password2 abgelegt wird verschwinden. – user8504021

Antwort

0

Haben Sie vergessen, das Tag für das Passwort einzubinden.

<Input type="password" name="password" > 
+0

Vermutlich wird '{{registr_form.password1}}' auf das tatsächliche Passwort-Eingabefeld erweitert. –

Verwandte Themen