#flask-wtforms #bootstrap-datepicker
Вопрос:
Я работаю над проектом, и один из модулей связан с сайтом встреч, использующим форму wtfform Поле данных колбу в моей форме в appointment.html выглядит так:
lt;form action="#" method="post" name="myform"gt; {{ form.csrf_token }} {{ wtf.quick_form(form, novalidate=True, button_map={"submit": "primary"}) }}
мой forms.py:
class DateForm(FlaskForm): date = DateField("Date", format="'%Y-%m-%d'", validators=[Optional()]) hour = TimeField("Hour", format="'%H:%M'", validators=[Optional()]) submit = SubmitField("Submit")
Мой main.py
@app.route("/appointment", methods=["GET", "POST"]) def appointment(): form = DateForm() if form.validate_on_submit(): session["date"] = form.date.data session["hour"] = form.hour.data return redirect(url_for('date')) return render_template("appointment.html", form=form, current_user=current_user)
@app.route('/date', methods=['GET', 'POST']) def date(): date = session["date"] hour = session["hour"] return render_template('date.html')
Я протестировал другие альтернативы, но с тем же результатом. Несмотря ни на что, я все еще вижу сообщения «Недопустимое значение даты» и «Недопустимое значение времени». Я ценю любую помощь. Спасибо!!!
Ответ №1:
Я уже решил эту проблему, добавив InputRequired() в качестве валидатора в форму, вот так:
date = DateField("Fecha", validators=([InputRequired(), DataRequired()])) hour = TimeField("Hora", validators=([InputRequired(), DataRequired()]))