class HelloParams(Form): name = wtforms.StringField(default='world', validators=[wtforms.validators.Length(max=50)]) repeat = wtforms.IntegerField( default=1, render_kw={'type': 'number'}, validators=[wtforms.validators.NumberRange(min=1, max=1000)]) capitalize = wtforms.BooleanField(default=False)
class SignupForm(flask_wtf.FlaskForm): name = wtforms.StringField("Name") age = wtforms.IntegerField("Age") pwd = wtforms.PasswordField("Password") pwd_confirm = wtforms.PasswordField("Confirm password", validators=[EqualToCI('pwd', message="PLEASE PUT THE SAME PASSWORD IN THE TWO FIELDS")]) submit = wtforms.SubmitField("Signup")
def handle_integer_types(self, column: "sa.Column", field_args, **extra) -> "Field": field_args = self._apply_require_validators(column, field_args) unsigned = getattr(column.type, "unsigned", False) if unsigned: field_args["validators"].append( wtforms.validators.NumberRange(min=0)) return wtforms.IntegerField(**field_args)
class AdminEventForm(flask_wtf.FlaskForm): id = wtforms.IntegerField('id', validators=[validators.DataRequired()]) name = wtforms.StringField('name', validators=[validators.DataRequired()]) teams = wtforms.BooleanField('teams') active = wtforms.BooleanField('active') add = wtforms.SubmitField(label='Add') update = wtforms.SubmitField(label='Update') delete = wtforms.SubmitField(label='Delete')
class FieldForm(Form): name = wtforms.StringField(validators=[ wtforms.validators.InputRequired(), wtforms.validators.Length(min=2, max=100), wtforms.validators.Regexp(RE_VALID_NAME, message=_(u'Not a valid variable name')), wtforms.validators.NoneOf( RESERVED_WORDS, message=_(u'Can\'t use reserved programming word')), unique_variable ]) title = wtforms.StringField(validators=[wtforms.validators.Optional()]) description = wtforms.StringField( widget=wtforms.widgets.TextInput(), validators=[wtforms.validators.Optional()]) type = wtforms.StringField(validators=[ wtforms.validators.InputRequired(), wtforms.validators.AnyOf(set(t['name'] for t in types)) ]) is_required = wtforms.BooleanField( validators=[wtforms.validators.Optional()]) is_private = wtforms.BooleanField( validators=[wtforms.validators.Optional()]) is_system = wtforms.BooleanField( validators=[wtforms.validators.Optional()]) is_readonly = wtforms.BooleanField( validators=[wtforms.validators.Optional()]) # Choice is_collection = wtforms.BooleanField( validators=[wtforms.validators.Optional()]) # Choice is_shuffled = wtforms.BooleanField( validators=[wtforms.validators.Optional()]) # Numbers decimal_places = wtforms.IntegerField( validators=[wtforms.validators.Optional()]) # Number/String/Multichoice value_min = wtforms.IntegerField( validators=[wtforms.validators.Optional()]) # Number/String/Multichoice value_max = wtforms.IntegerField( validators=[wtforms.validators.Optional()]) # String pattern = wtforms.StringField( validators=[wtforms.validators.Optional()]) choices = wtforms.FieldList(wtforms.FormField(ChoiceForm))
class VoteTagForm(flask_wtf.Form): """ Form used to add a rating to a package. """ pkgname = wtf.TextField('Package name', [wtf.validators.Required(), validate_package] ) tag = wtf.TextField('Tag', [wtf.validators.Required()]) vote = wtf.IntegerField('vote', [wtf.validators.Required(), validate_boolean])
class AdminFlagForm(flask_wtf.FlaskForm): flag = wtforms.StringField('flag', validators=[validators.DataRequired()]) value = wtforms.IntegerField('value', validators=[validators.NumberRange(min=0, max=50)]) event_id = wtforms.SelectField('event_id', choices=('', 'None'), coerce=special_int, validators=[validators.Optional()]) notes = wtforms.StringField('notes', widget=wtforms.widgets.TextArea()) add = wtforms.SubmitField(label='Add') update = wtforms.SubmitField(label='Update') delete = wtforms.SubmitField(label='Delete')
class CycleForm(Form): title = wtforms.StringField( validators=[ wtforms.validators.InputRequired(), wtforms.validators.Length(min=3, max=32), check_unique_url]) week = wtforms.IntegerField() is_interim = wtforms.BooleanField()
class FilterForm(Form): page = wtforms.IntegerField() status = wtforms.StringField( validators=[ wtforms.validators.Optional(), wtforms.validators.AnyOf(statuses)]) start = DateField() end = DateField()
class CoinQueryForm(Form): """ 消耗元宝查询 """ date_beg = wtforms.DateField(u'开始日期', format='%Y-%m-%d') date_end = wtforms.DateField(u'结束日期', format='%Y-%m-%d') filter_coins_gt = wtforms.SelectField(u'数目大于', choices=[(0, '全部元宝'), (1, u'真元宝'), (2, u'绑元宝')], coerce=int) coins_num = wtforms.IntegerField() pid = wtforms.IntegerField(u'角色id') filter_coins_type = wtforms.SelectField(u'流转类型', choices=[(1, '消耗元宝'), (2, '添加元宝')], coerce=int) submit = wtforms.SubmitField(u'查询')
class SearchForm(Form): query = wtforms.StringField( validators=[wtforms.validators.Optional()], filters=[lambda v: v.strip()[:100] if v else None]) page = wtforms.IntegerField( validators=[wtforms.validators.Optional()], filters=[lambda v: 1 if not v or v < 1 else v], default=1)
class DatasetForm(Form): """ A form used to create an image gradient dataset """ train_image_count = utils.forms.IntegerField( 'Train Image count', validators=[ validators.DataRequired(), validators.NumberRange(min=1), ], default=1000, tooltip="Number of images to create in training set" ) val_image_count = utils.forms.IntegerField( 'Validation Image count', validators=[ validators.Optional(), validators.NumberRange(min=0), ], default=250, tooltip="Number of images to create in validation set" ) test_image_count = utils.forms.IntegerField( 'Test Image count', validators=[ validators.Optional(), validators.NumberRange(min=0), ], default=0, tooltip="Number of images to create in validation set" ) image_width = wtforms.IntegerField( u'Image Width', default=50, validators=[validators.DataRequired()] ) image_height = wtforms.IntegerField( u'Image Height', default=50, validators=[validators.DataRequired()] )
class TableForm(Form): """Subform. CSRF is disabled for this subform (using `Form` as parent class) because it is never used by itself. """ table_name = f.StringField('Name', validators=[DataRequired()]) capacity = f.IntegerField('Capacity', validators=[DataRequired(), NumberRange(min=1)])
class F(wtf.Form): @property def selected_chroots(self): selected = [] for ch in self.chroots_list: if getattr(self, ch).data: selected.append(ch) return selected git_url = wtforms.StringField( "Git URL", validators=[ wtforms.validators.DataRequired(), wtforms.validators.URL() ]) git_directory = wtforms.StringField( "Git Directory", validators=[wtforms.validators.Optional()]) git_branch = wtforms.StringField( "Git Branch", validators=[wtforms.validators.Optional()]) tito_test = wtforms.BooleanField(default=False) memory_reqs = wtforms.IntegerField( "Memory requirements", validators=[ wtforms.validators.Optional(), wtforms.validators.NumberRange( min=constants.MIN_BUILD_MEMORY, max=constants.MAX_BUILD_MEMORY) ], default=constants.DEFAULT_BUILD_MEMORY) timeout = wtforms.IntegerField( "Timeout", validators=[ wtforms.validators.Optional(), wtforms.validators.NumberRange( min=constants.MIN_BUILD_TIMEOUT, max=constants.MAX_BUILD_TIMEOUT) ], default=constants.DEFAULT_BUILD_TIMEOUT) enable_net = wtforms.BooleanField()
class HeroForm(w.Form): hero_name = f.StringField('Hero Name', validators=[ v.InputRequired('Hero name required'), ]) player_name = f.StringField('Player Name', validators=[ v.InputRequired('Player name required'), ]) level = f.IntegerField('Level', validators=[ v.InputRequired('Level required'), ]) max_hp = f.IntegerField('Max Hit Points', validators=[ v.InputRequired('Max hit hoints required'), ]) initiative_modifier = f.IntegerField('Initiative Modifier', validators=[ v.InputRequired('Initiative Modifier required'), ]) save = f.SubmitField('Save Hero')
def build_questionnaire(form, data=None): fields = {'groups': []} fields['participant'] = wtforms.StringField( 'Participant', filters=[partial(filter_participants, form)], validators=[wtforms.validators.required()]) for group in form.data['groups']: groupspec = (group['name'], []) for field in group['fields']: # if the field has options, create a list of choices field_type = field.get('type') if field_type in ('select', 'multiselect', 'category'): choices = [(v, k) for k, v in field.get('options').items()] if field['type'] == 'multiselect': fields[field['tag']] = IntegerSplitterField( field['tag'], choices=choices, description=field['description'], validators=[wtforms.validators.optional()], ) else: fields[field['tag']] = wtforms.SelectField( field['tag'], choices=choices, coerce=int, description=field['description'], validators=[wtforms.validators.optional()], widget=wtforms.widgets.TextInput()) elif field_type in ('comment', 'string'): fields[field['tag']] = wtforms.StringField( field['tag'], description=field['description'], validators=[wtforms.validators.optional()]) elif field_type in ('boolean', 'integer'): if field_type == 'boolean': field_validators = [wtforms.validators.optional()] else: field_validators = [ wtforms.validators.optional(), wtforms.validators.NumberRange(min=field.get('min', 0), max=field.get( 'max', 9999)) ] fields[field['tag']] = wtforms.IntegerField( field['tag'], description=field['description'], validators=field_validators) fields['groups'].append(groupspec) form_class = type('QuestionnaireForm', (BaseQuestionnaireForm, ), fields) return form_class(data)
class DonorForm(wtforms.Form): user_email = wtforms.TextField(label='User email', validators=[wtforms.validators.Optional()]) confirmation = wtforms.TextField( label='Confirmation', validators=[wtforms.validators.Optional()]) amount_choice = wtforms.RadioField( label='Donation amount', validators=[wtforms.validators.Optional()], coerce=int, choices=AMOUNT_CHOICES) customize_amount = wtforms.IntegerField( label='Customize your donation amount', validators=[ wtforms.validators.Optional(), wtforms.validators.NumberRange(1, 1000000) ]) first_name = wtforms.TextField(label='Name', validators=[wtforms.validators.Required()]) last_name = wtforms.TextField(label='Name', validators=[wtforms.validators.Optional()]) address = wtforms.TextField(label='Address', validators=[ wtforms.validators.Required(), wtforms.validators.Length(max=500) ], default=u'') city = wtforms.TextField(label='City', validators=[wtforms.validators.Required()]) state = wtforms.SelectField( label='Please select any one state in the list', choices=STATES) pin = wtforms.TextField(label='Pin Code', validators=[wtforms.validators.Required()]) phone_number = wtforms.TextField( label='Phone Number', validators=[wtforms.validators.Required()]) email = wtforms.TextField(label='Email', validators=[wtforms.validators.Required()]) pan_number = wtforms.TextField(label='Pan Number', validators=[wtforms.validators.Required()]) tax_exemption_certificate = wtforms.RadioField( label='Would you like us to send you a Tax Exemption Certificate?', default='False', choices=[('True', 'Yes'), ('False', 'No')]) ann_choice = wtforms.RadioField(label='Would you like to be anonymous?', default='False', choices=[('True', 'Yes'), ('False', 'No')]) def set_data(self, user): self.first_name.data = user.first_name self.last_name.data = user.last_name self.address.data = user.address self.state.data = user.state self.city.data = user.city self.pin.data = user.pin self.phone_number.data = user.contact_number self.email.data = user.email self.pan_number.data = user.pan_number
class UserForm(FlaskForm): email = EmailField( 'Email', validators=[DataRequired(), Email(), UniqueMailValidator()]) firstname = f.StringField('Firstname', validators=[DataRequired()]) lastname = f.StringField('Lastname', validators=[DataRequired()]) password = f.PasswordField('Password', validators=[DataRequired()]) age = f.IntegerField('Age', validators=[DataRequired()]) weight = f.FloatField('Weight', validators=[DataRequired()]) max_hr = f.IntegerField('Max Heartrate', validators=[DataRequired()]) rest_hr = f.IntegerField('Rest Heartrate', validators=[DataRequired()]) vo2max = f.FloatField('VO2 Max', validators=[DataRequired()]) display = [ 'email', 'firstname', 'lastname', 'password', 'age', 'weight', 'max_hr', 'rest_hr', 'vo2max' ]
class CMSHighlightForm(BaseForm): post_id = wtforms.IntegerField( validators=[wtforms.validators.InputRequired()]) def validate_post_id(self, field): post_id = field.data post = PostModel.query.filter_by(id=post_id).first() if not post: return wtforms.ValidationError(u'该帖子不存在!')
class GammaForm(wtf.Form): a = HTML5FloatField(default=0.5, validators=[wtf.validators.InputRequired()]) h = HTML5FloatField(default=2.0, validators=[wtf.validators.InputRequired()]) A = HTML5FloatField(default=1.41421356237, validators=[wtf.validators.InputRequired()]) resolution = wtf.IntegerField(default=500, validators=[wtf.validators.InputRequired()])
class MoveForm(Form): target = wtforms.StringField(validators=[ wtforms.validators.Optional(), wtforms.validators.AnyOf(schema.attributes, message=_(u'Does not exist')), not_self, not_section ]) index = wtforms.IntegerField( validators=[wtforms.validators.NumberRange(min=0)])
class CreateSessionForm(wtforms.Form): session_configs = SESSION_CONFIGS_DICT.values() session_config_choices = [(s['name'], s['display_name']) for s in session_configs] session_config = wtforms.SelectField( choices=session_config_choices, validators=validators_required, render_kw=dict({'class': 'form-select'}), ) num_participants = wtforms.IntegerField( validators=[ wtvalidators.DataRequired(), wtvalidators.NumberRange(min=1) ], render_kw={ 'autofocus': True, 'class': 'form-control w-auto' }, ) # too much weirdness with BooleanField and 'y' # so we render manually # it's a booleanfield so its default value will be 'y', # but it's a hidden widget that we are passing to the server # through .serializeArray, so we need to filter out is_mturk = wtforms.BooleanField() room_name = wtforms.StringField(widget=wtwidgets.HiddenInput()) def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) if self.is_mturk.object_data: label = "Number of MTurk workers (assignments)" description = ( 'Since workers can return an assignment or drop out, ' 'some "spare" participants will be created: ' f'the oTree session will have {settings.MTURK_NUM_PARTICIPANTS_MULTIPLE} ' 'times more participant objects than the number you enter here.' ) else: label = "Number of participants" description = '' self.num_participants.label = label self.num_participants.description = description def validate(self): if not super().validate(): return False config = SESSION_CONFIGS_DICT[self.session_config.data] lcm = config.get_lcm() if self.num_participants.data % lcm: self.num_participants.errors.append( 'Please enter a valid number of participants.') return not bool(self.errors)
class TeacherForm(FlaskForm): """ form字段的参数 label=None, 表单的标签 validators=None, 校验,传入校验的方法 filters=tuple(), 过滤 description='', 描述 id=None, html id default=None, 默认值 widget=None, 样式 render_kw=None, 属性 参数 """ name = wtforms.StringField( label="教师姓名", validators=[ validators.DataRequired('姓名不可以为空') ], render_kw={ "class": "form-control", "placeholder": "教师姓名" } ) age = wtforms.IntegerField( label="教师年龄", validators=[ validators.DataRequired("年龄不可以为空"), ], render_kw={ "class": "form-control", "placeholder": "教师年龄", } ) gender = wtforms.SelectField( label="教师性别", choices=[ ("1","男"), ("2","女") ], render_kw={ "class": "form-control", } ) course = wtforms.SelectField( label="学科", choices=course_list, render_kw={ "class": "form-control", } ) submit = wtforms.SubmitField( label="提交", render_kw={ "class": "btn btn-primary btn-block", }, )
class AddProduct(flask_wtf.FlaskForm): name = wtforms.StringField("Name", validators=[vid.DataRequired()], render_kw={"placeholder": "Name of product"}) price = wtforms.IntegerField("price", validators=[vid.DataRequired()], render_kw={"placeholder": "Price of product"}) des = wtforms.StringField( "Description", render_kw={"placeholder": "Description of product"}) image = wtforms.StringField( "url_image", validators=[vid.DataRequired()], render_kw={"placeholder": "URl image for product"}) kind = wtforms.IntegerField( "kind", validators=[vid.DataRequired()], render_kw={"placeholder": "1-ice,2-hot,3-fruit"}) Sumbmit = wtforms.SubmitField("Sign up")
class AdminClassVideo(FlaskForm): name = wtforms.SelectField("Add Videos to This Virtual Class") video = FileField("New Presentation Video", validators=[ FileAllowed(videos, 'Videos only!'), FileRequired('File was empty!') ]) sequ_nb = wtforms.IntegerField("Enter the Video Sequence Number") submit = wtforms.SubmitField("Add Video")
class NewWeightEntry(FlaskForm): # nouvelle_entree_poids.html titre = lazy_gettext("Nouvelle mesure de poids") # date_heure = DateTimeLocalField("Date et heure", default=datetime.datetime.now()) masse = wtforms.IntegerField(lazy_gettext("Masse : "), validators=[DataRequired( lazy_gettext("Ce champ est obligatoire."))]) unite_masse = sex = wtforms.RadioField(lazy_gettext("Unité de masse"), validators=[], choices=[ (UniteMasse.kg.name, UniteMasse.kg.name, ), ], default=UniteMasse.kg.name) enregistrement_poids = wtforms.SubmitField(lazy_gettext("Enregistrer poids"))
class ReservationForm(FlaskForm): reservation_date = f.DateField( 'date', validators=[DataRequired(), DateRange(min=datetime.now().date())], format='%Y-%m-%d', render_kw={"type": "date"}) reservation_time = f.TimeField('time', validators=[DataRequired()]) seats = f.IntegerField('seats', validators=[DataRequired()]) display = ['reservation_date', 'reservation_time', 'seats']
class PreWTFormsBase(djburger.validators.bases.WTForms): name = wtforms.StringField('Name', [ wtforms.validators.DataRequired(), ]) mail = wtforms.StringField('E-Mail', [ wtforms.validators.DataRequired(), wtforms.validators.Email(), ]) count = wtforms.IntegerField('Count', [ wtforms.validators.DataRequired(), wtforms.validators.NumberRange(min=0), ])
class PreWTFormsWrapped(wtforms.Form): name = wtforms.StringField('Name', [ wtforms.validators.DataRequired(), ]) mail = wtforms.StringField('E-Mail', [ wtforms.validators.DataRequired(), wtforms.validators.Email(), ]) count = wtforms.IntegerField('Count', [ wtforms.validators.DataRequired(), wtforms.validators.NumberRange(min=0), ])
class ItemsForm(FlaskForm): name = wtf.StringField("Nome", [wtf.validators.DataRequired()]) image = wtf.FileField("Image", [wtf.validators.DataRequired()]) price = wtf.FloatField("Preço", [wtf.validators.DataRequired()]) quantity = wtf.IntegerField("Quantidade", [wtf.validators.DataRequired()]) description = wtf.TextAreaField("Descrição", [wtf.validators.DataRequired()]) store_id = QuerySelectField('ID da loja', query_factory=lambda: Store.query.all()) available = wtf.BooleanField("Disponivel", default=True)