Advertisement
Guest User

Untitled

a guest
Jul 5th, 2016
134
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.40 KB | None | 0 0
  1. def validate(self, extra_validators=None):
  2. """
  3. Validates the form by calling `validate` on each field.
  4.  
  5. :param extra_validators:
  6. If provided, is a dict mapping field names to a sequence of
  7. callables which will be passed as extra validators to the field's
  8. `validate` method.
  9.  
  10. Returns `True` if no errors occur.
  11. """
  12. self._errors = None
  13. success = True
  14. for name, field in iteritems(self._fields):
  15. if extra_validators is not None and name in extra_validators:
  16. extra = extra_validators[name]
  17. else:
  18. extra = tuple()
  19. if not field.validate(self, extra):
  20. success = False
  21. return success
  22.  
  23. from wtforms import StringField, BooleanField, PasswordField, validators, ValidationError, HiddenField
  24. from flask_wtf import Form
  25.  
  26. class LoginForm(RedirectForm):
  27. email = StringField('Email', [
  28. validators.DataRequired(),
  29. validators.Email('Invalid Email Address')
  30. ])
  31.  
  32. password = PasswordField('Password', [
  33. validators.DataRequired()
  34. ])
  35.  
  36. def validate(self):
  37. if not Form.validate(self):
  38. return False
  39.  
  40. user = User.query.filter_by(email=self.email.data.lower()).first()
  41. if user and user.check_password(self.password.data):
  42. self.user = user
  43. return True
  44. else:
  45. self.email.errors.append("Invalid e-mail or password")
  46.  
  47. return False
  48.  
  49. def get_user(self):
  50. return self.user
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement