Пример использования Python wtform datetime с sqlalchemy и sqlite - PullRequest
0 голосов
/ 04 апреля 2020

Я пытаюсь создать форму, используя wtform datetime, которая принимает дату с помощью средства выбора даты.

form.py
class RegistrationForm(FlaskForm):
    eventname = StringField('Event Name', validators=[DataRequired()])
    eventstart = DateField(
        'Enter start date and time', id='datepick', validators=[DataRequired()]
     )

. Правильно отображает средство выбора даты и времени. Тем не менее, я не понимаю, как получить его в правильном формате, используя sqlalchemy и sqlite. Похоже, это не проверяет при отправке Когда я добавляю print(events), вывод будет {}.

view.py
@events_blueprint.route('/add', methods=['GET', 'POST'])
def register():

    form = RegistrationForm()
    print(form.errors)

    if form.validate_on_submit():
        event = Events(
            eventname=form.eventname.data,
            eventstart=form.eventstart.data,
            # eventstop=form.eventstop.data,
        )

        db.session.add(event)
        db.session.commit()
        flash("Thank you for registering your event.")

    return render_template('add.html', form=form)
class Events(db.Model):

    __tablename__ = 'events'
    id = db.Column(db.Integer, primary_key=True)
    eventname = db.Column(db.Text(64), unique=True, index=True)
    eventstart = db.Column(db.Text, nullable=False)
    #  This is a one-to-many connection with Eventdetails database
    details = db.relationship('Eventdetails', backref='event', lazy='dynamic')

    def __init__(
        self, eventname, eventstart
    ):
        self.eventname = eventname
        self.eventstart = eventstart


    def __repr__(self):
        return f"{self.eventname}"

Любая помощь, указывающая мне правильное направление, будет принята с благодарностью. В конечном счете, я хотел бы учесть часовой пояс и время окончания события, чтобы у меня был временной диапазон.

...