Ошибки с Flask-WTF, валидаторыPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Ошибки с Flask-WTF, валидаторы

Сообщение Anonymous »

Код следующим образом: < /p>
wtf.py:
from flask import Flask, render_template, redirect, url_for, request, flash
from forms import MyForm
from flask_wtf import CSRFProtect

app = Flask(__name__)
app.config['SECRET_KEY'] = 'KERNEL?::(65535)/TCP.SEC'
csrf = CSRFProtect(app)
@app.route('/home', methods=['GET','POST'])
def home():
form = MyForm()#Se crea una instancia de la clase de formulario.
if form.validate_on_submit():
return 'User: {form.user.data}
Password: {form.password.data}
'
print(request.method)
print(form.validate_on_submit())
return render_template('wtf.html', form=form)

@app.route('/profile', methods=['GET', 'POST'])
def profile():
if request.method == 'POST':
username = request.form.get('name')
password = request.form.get('password')
return f'Username: {username}
Password: {password}'
else:
return 'Nothing to show here, bro.'
if __name__ == '__main__':
app.run(debug=True)
< /code>
wft.html:





WTForm

body{
background-color: #2B2D42;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
margin: 0;
height: 100vh;
}
*{
color: #92DCE5;
}
.main{
font-size: 1.5em;
font-weight: 1500;
}
form p input{
color: black;
}
form p label{
color: #FF66D8;
}
form p input:focus{
outline: none;
}



Flask WTF

{{ form.hidden_tag() }}
{{ form.name.label }} {{ form.name() }}
{{ form.password.label }} {{ form.password() }}
{{ form.password_confirmation.label }} {{ form.password_confirmation }}
{{ form.submit() }}



< /code>
form.py:
from flask_wtf import FlaskForm
from wtforms import StringField, SubmitField, PasswordField
from wtforms.validators import DataRequired, length, EqualTo

class MyForm(FlaskForm):
name = StringField('Name', validators=[DataRequired()])
password = PasswordField('Password', validators=[DataRequired(),length(min=8, max=16)])
password_confirmation = PasswordField('Confirm', validators=[DataRequired(), EqualTo('password', message='Must be equal to first password')])
submit = SubmitField('Send username')

< /code>
The main problem is that the EqualTo() varidator (в form.py ) не работает, как предполагается, поскольку он не бросает никаких предупреждений, если пароль неверный (что, кстати, я уже пробовал), а страница Просто отправлено, но еще одна проблема заключается в том, что форма должна отправить запрос в качестве поста, однако, в/home Просмотр я не могу захватить этот метод (я думаю, что это проблема).
Дополнительная информация: < /p>
Flask 3.1.0
Flask-WTF 1.2.2
Werkzeug 3.1.3
WTForms 3.2.1


Подробнее здесь: https://stackoverflow.com/questions/794 ... validators
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Ошибки с Flask-WTF, валидаторы
    Anonymous » » в форуме Python
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Jinja2.Exceptions.UndefineError: «форма» — это неопределенная ошибка при рендеринге шаблона с помощью Flask и Flask-WTF
    Anonymous » » в форуме Python
    0 Ответы
    28 Просмотры
    Последнее сообщение Anonymous
  • Flask-WTF — validate_on_submit() никогда не выполняется
    Anonymous » » в форуме Python
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous
  • Как вычислить возраст пользователя с дат-поля в Флаке-WTF?
    Anonymous » » в форуме Python
    0 Ответы
    1 Просмотры
    Последнее сообщение Anonymous
  • Валидаторы Java Spring работают на локальном этапе, но не на этапе развертывания, 500 вместо 400
    Гость » » в форуме JAVA
    0 Ответы
    62 Просмотры
    Последнее сообщение Гость

Вернуться в «Python»