From 649a7380123199171dcf511c35bb67726472a663 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20=27Necoro=27=20Neumann?= Date: Sun, 12 Jan 2020 00:58:24 +0100 Subject: Support MonthField, but not HTML5 atm --- app/forms.py | 6 +++++- app/views/consts.py | 6 ++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/app/forms.py b/app/forms.py index 5ea6525..b7cbebf 100644 --- a/app/forms.py +++ b/app/forms.py @@ -1,7 +1,7 @@ # -*- encoding: utf-8 -*- import flask from flask_wtf import FlaskForm -from wtforms.fields import BooleanField, StringField, HiddenField, PasswordField, DecimalField as WTFDecimalField +from wtforms.fields import BooleanField, StringField, HiddenField, PasswordField, DecimalField as WTFDecimalField, DateField as HTML4DateField from wtforms.fields.html5 import DateField, IntegerField from wtforms import validators, ValidationError, Form as WTForm @@ -25,6 +25,10 @@ class DecimalField(WTFDecimalField): value = valuelist[0].replace(',','.') super().process_formdata([value]) +class MonthField(HTML4DateField): + def __init__(self, label, validators, format='%m.%Y', **kwargs): + super().__init__(label, validators, format, **kwargs) + req = [validators.input_required()] class Form(FlaskForm): diff --git a/app/views/consts.py b/app/views/consts.py index 66c8938..5d6598d 100644 --- a/app/views/consts.py +++ b/app/views/consts.py @@ -25,12 +25,10 @@ def one_year(d): # Form # class ConstForm(F.Form): - start = F.DateField('Beginn', F.req, - format='%m.%Y', + start = F.MonthField('Beginn', F.req, default=lambda: today()) - end = F.DateField('Ende', F.req, - format='%m.%Y', + end = F.MonthField('Ende', F.req, default=lambda: one_year(today()), description='(einschließlich)') -- cgit v1.2.3