wolverine777
@wolverine777

Как правильно сконфигурировалть поля для дат и телефона в wtforms?

Привет, пытаюсь разобраться в полях для рег. формы - подскажите что является "good practice" для:
1. Дат рождения (я пока оставил StringField)
2. Телефонов (тоже самое)

Может быть есть какие-то элегантные (популярные) формы которые используются во взрослом мире? :)

Спасибо!

Вот что у меня сейчас:

from flask_wtf import FlaskForm
from wtforms import StringField, PasswordField, SubmitField, DateTimeField
from wtforms.validators import DataRequired, Email, EqualTo # to validate the data (
                                                # DataRequired --> NOT EMPTY,
                                                # Email --> using an email @. etc,
                                                # EqualTo-->pass confirm)
from wtforms import ValidationError # to check doubles in a DATABASE

class RegistrationForm(FlaskForm):

    # Personal Information
    first_name = StringField('First Name:',validators=[DataRequired()])
    last_name = StringField('Last Name',validators=[DataRequired()])
    dob = StringField('Date of Birth: ', validators=[DataRequired()])

    # Account Information
    email = StringField('Email: ',validators=[DataRequired(),Email(),EqualTo('email_confirm',message='Emails must match!')])
    email_confirm = StringField('Re-type Email: ', validators=[DataRequired()]) # so it has to match to EqualTo('email_confirm')
    password = PasswordField('Password: ',validators=[DataRequired()])

    # Contact Information
    address = StringField('Address: ',validators=[DataRequired()])
    city = StringField('City: ',validators=[DataRequired()])
    phone = StringField('Phone: ',validators=[DataRequired()])

    submit = SubmitField('Register!')
  • Вопрос задан
  • 268 просмотров
Пригласить эксперта
Ответы на вопрос 1
wolverine777
@wolverine777 Автор вопроса
Ну вот, разобрался например с датой:

в формах:
from wtforms.fields.html5 import DateField
dob = DateField('DatePicker', format='%Y-%m-%d')


в app.py
dob=form.dt.data.strftime('%Y-%m-%d')
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы