Не могу разобраться почему валидаторы всегда возвращают False
То есть всегда переход на error.html
Помогите, пожалуйста)
Python 3.5, Flask==0.12, Flask-WTF==0.14.2, WTForms==2.1
forms.py:
class SignupForm(Form): name = StringField("Ваше имя", [validators.DataRequired("Необходимо ввести имя")]) email = StringField("Ваш E-mail", [validators.DataRequired("Необходимо ввести E-mail"), validators.Email("Необходимо ввести корректный E-mail")]) password = PasswordField('Создайте пароль', [validators.DataRequired("Необходимо ввести пароль")]) submit = SubmitField("Создать аккаунт") def __init__(self, *args, **kwargs): Form.__init__(self, *args, **kwargs) def validate(self): if not Form.validate(self): return False user = User.query.filter_by(email=self.email.data.lower()).first() if user: self.email.errors.append("Этот E-mail уже зарегистрирован в системе") return False else: return True
views.py
@app.route('/signup', methods=['GET', 'POST']) def signup(): form = SignupForm() name = form.name.data email = form.email.data password = form.password.data if request.method == 'GET': return render_template('signup.html', form=form) elif request.method == 'POST' and form.validate(): return "[1] Create a new user [2] sign in the user [3] redirect to the user's profile" else: return render_template('error.html', password=password) #Здесь я проверял что параметры приходят верно