0
클린이 내 입력 내용과 관계없이 로그인 양식에 오류를 표시하지 않으며 내가 깨끗하게 시도하는 오류를 표시하는 방법에 관계 없습니다.Django : 양식을 제출할 때 오류가 표시되지 않습니다.
내 CustomUserCreationForm 오류 표시가 완벽하게 작동합니다. 둘 사이의 유일한 차이점은 사용자 정의가 내 형태
class LoginForm(forms.Form):
username = forms.CharField(label=('UserName'),
widget = forms.TextInput(attrs={'placeholder': _('Username')})
)
password = forms.CharField(label=('Password'),
widget=forms.PasswordInput(attrs={'placeholder' : _('Password') }),
)
def helper(self):
helper = FormHelper()
helper.form_id = "Login"
helper.form_method = "POST"
helper.layout = Layout(Div(
Field('username', css_class='input-box-rounded'),
Field('password', css_class='input-box-rounded'),
Submit('Login', 'Login', css_class='col-md-6 col-md-offset-3 rounded'),
css_class='col-md-4 col-md-offset-4 centered-div'))
return helper
def clean(self):
cleaned_data = super(LoginForm, self).clean()
if 'username' not in cleaned_data:
msg = _("Please enter a username")
self._errors['username'] = self.error_class([msg])
if 'password' not in cleaned_data:
msg = _("Please enter a password")
raise forms.ValidationError(msg)
u =authenticate(username = cleaned_data['username'], password = cleaned_data['password'])
if u == None:
msg = _("Username or Password is incorrect")
self.add_error('username', msg)
return cleaned_data