少なくとも1つのフィールドが必要であるという事実を強制する検証をWTFformsに実装する方法はありますか?
たとえば、2つStringField
のがあり、[送信]をクリックする前に、ユーザーが少なくとも1つのフィールドに何かを書き込んでいることを確認したいと思います。
field1 = StringField('Field 1', validators=[???])
field2 = StringField('Field 2', validators=[???])
の代わりに何を書くべき???
ですか?InputRequired()
この場合、フィールドの1つまたは両方に割り当てる必要があるため、ジョブは実行されません。どうやってやるの?
フォームのvalidate
メソッドを上書きします。例えば:
class CustomForm(FlaskForm):
field1 = StringField('Field 1')
field2 = StringField('Field 2')
def validate(self, extra_validators=None):
if super().validate(extra_validators):
# your logic here e.g.
if not (self.field1.data or self.field2.data):
self.field1.errors.append('At least one field must have a value')
return False
else:
return True
return False
入力長など、フィールドに個々のバリデーターを追加できることに注意してください。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加