hier ist die Formkann nicht django Form Validierungsfehler auf derselben Seite
class LoginForm(forms.Form):
email = forms.EmailField(
label=("Email"),
widget=forms.TextInput(attrs={
'id': 'inputEmail',
'class': 'form-control inp',
'type': 'text',
'placeholder': 'your email'
}),
required=True
)
password = forms.CharField(
widget=forms.PasswordInput(
render_value=False,
attrs={
'id': 'inputPassword',
'class': 'form-control inp',
'type': 'password',
'placeholder': 'Password'
}
),
required=True
)
und hier ist der Blick für das Formular
class Home(View):
template_name = "sellers/seller_home.html"
form_class = LoginForm
def get(self, request , *args , **kwargs):
context = {}
login_form = LoginForm()
context['login_form'] = login_form
return render(request , "sellers/seller_home.html" , context)
def post(self , request , *args , **kwargs):
email = request.POST.get('email')
name = request.POST.get('store_name')
password = request.POST.get('password')
mobile = request.POST.get('mobile')
form = self.form_class(request.POST)
if request.is_ajax():
if email:
if User.objects.filter(email=email).exists():
return HttpResponse(json.dumps('True'))
else:
return HttpResponse(json.dumps('False'))
if mobile:
if User.objects.filter(mobile=mobile).exists():
return HttpResponse(json.dumps('True'))
else:
return HttpResponse(json.dumps('False'))
else:
if form.is_valid():
email = form.cleaned_data["email"]
password = form.cleaned_data["password"]
user = User.objects.get(email__iexact=email)
authenticated_user = authenticate(username=user.username , password=password)
if not authenticated_user:
raise ValidationError("Email or password is incorrect")
else:
login(request , authenticated_user)
return HttpResponseRedirect(reverse('dashboard'))
else:
return render(request , self.template_name , {'login_form' : form})
das Problem hier iam Verkleidung zeigen, ist, dass ich nicht in der Lage bin Validierungsfehler als Label in der Vorlage zu zeigen. Es löst Fehler als Validierungsfehler. Wie kann ich die Validierung auf eine bessere Weise erreichen?
hier ist die Zurückverfolgungs
Traceback:
File "C:\Python27\lib\site-packages\django\core\handlers\base.py" in get_response
132. response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "C:\Python27\lib\site-packages\django\views\generic\base.py" in view
71. return self.dispatch(request, *args, **kwargs)
File "C:\Python27\lib\site-packages\django\views\generic\base.py" in dispatch
89. return handler(request, *args, **kwargs)
File "C:\Users\lenovo\Desktop\Grooved2\grooved\src\sellers\views.py" in post
82. raise ValidationError("Email or password is incorrect")
Exception Type: ValidationError at /sellers/
Exception Value: [u'Email or password is incorrect']