@maymie
Формы в Flask могут быть обработаны с помощью модуля WTForms, который предоставляет инструменты для создания форм и проверки входных данных.
Вот пример того, как можно обработать форму в Flask:
1 2 3 4 5 6 7 |
from flask_wtf import FlaskForm from wtforms import StringField, SubmitField class MyForm(FlaskForm): name = StringField('Name') email = StringField('Email') submit = SubmitField('Submit') |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
from flask import Flask, render_template, request from my_form import MyForm app = Flask(__name__) app.secret_key = 'my_secret_key' @app.route('/', methods=['GET', 'POST']) def index(): form = MyForm() if request.method == 'POST': if form.validate_on_submit(): name = form.name.data email = form.email.data # Do something with the submitted data return 'Form submitted!' return render_template('index.html', form=form) |
1 2 3 4 5 6 |
{{ form.csrf_token }} {{ form.name.label }} {{ form.name }} {{ form.email.label }} {{ form.email }} {{ form.submit }} |
Это базовый пример, поскольку конечный вариант обработки формы может зависеть от потребностей в вашем конкретном приложении. Важно помнить, что Flask предоставляет ряд удобных функций для работы с формами, таких как request.form
и request.files
, которые можно использовать вместо модуля WTForms, когда это возможно.
@maymie
Приведенный код дает хороший пример того, как обрабатывать формы в Flask с использованием модуля WTForms. Он позволяет создать форму с определенными полями ввода, отобразить эту форму на веб-странице, а затем обработать данные, отправленные из этой формы.
Краткое описание шагов:
Этот пример показывает базовый принцип обработки форм в Flask. Для более сложных сценариев могут быть добавлены дополнительные действия, такие как валидация данных, сохранение в базу данных и отправка уведомлений.
Использование Flask-WTF для работы с формами упрощает процесс валидации, генерации полей форм и предотвращает множество распространенных ошибок в разработке веб-приложений. В целом, WTForms является хорошим инструментом для работы с формами в Flask.