from flask_wtf import FlaskForm from wtforms import StringField, TextAreaField, SelectField, BooleanField, SubmitField, PasswordField from wtforms.validators import DataRequired, Length class LoginForm(FlaskForm): username = StringField('用户名', validators=[DataRequired(), Length(max=80)]) password = PasswordField('密码', validators=[DataRequired()]) submit = SubmitField('登录') class RegisterForm(FlaskForm): username = StringField('用户名', validators=[DataRequired(), Length(max=80)]) password = PasswordField('密码', validators=[DataRequired(), Length(min=6)]) confirm_password = PasswordField('确认密码', validators=[DataRequired()]) submit = SubmitField('注册') class DemandForm(FlaskForm): title = StringField('需求标题', validators=[DataRequired(), Length(max=200)]) content = TextAreaField('需求内容', validators=[DataRequired(), Length(max=1000)]) branch = SelectField('分会', choices=[ ('comprehensive', '综合分会'), ('training', '培训服务分会'), ('hr', '基础人事服务分会'), ('talent', '人才服务分会'), ('functional', '职能支持分会'), ('finance_review', '经费审查委员会'), ('women', '女职工委员会') ], validators=[DataRequired()]) contact = StringField('联系方式') is_public = BooleanField('是否公开') submit = SubmitField('提交') class AnswerForm(FlaskForm): answer = TextAreaField('回答内容', validators=[DataRequired(), Length(max=2000)]) submit = SubmitField('保存回答')