在这里使用Flask的插件Flask-WTF,每个Web 表单都由一个继承自Form 的类表示。这个类定义表单中的一组字段,每个字段都用对象表示。字段对象可附属一个或多个验证函数。验证函数用来验证用户提交的输入值是否符合要求。 #下面的代码是一个简单的Web 表单,包含一个文本字段和一个提交按钮。 from flask.ext.wtf import Form from wtforms import StringField, SubmitField from wtforms.validators import Required class NameForm(Form): name = StringField(‘姓名, validators=[Required()]) submit = SubmitField(‘提交‘) ‘‘‘ Flask-WTF插件 作用:用于解决CSRF(跨站点请求伪造)的问题 链接:https://flask-wtf.readthedocs.io/en/stable/ 安装:pip install Flask-WTF ‘‘‘ #1、py文件:test_forms.py 中的代码: #coding:utf-8 from flask import Flask, render_template from forms import LoginForm app = Flask(__name__) @app.route(‘/‘) def login(): ‘‘‘访问首页‘‘‘ form = LoginForm() return render_template("from1.html",form=form) app.config[‘SECRET_KEY‘] = ‘ddu384783274*%%[email protected]#$%^&*de‘ if __name__ == ‘__main__‘: app.run(debug=True) #2、py文件:forms.py 中的代码 #coding:utf-8 from flask_wtf import FlaskForm from wtforms import StringField, SubmitField, SelectField, RadioField,TextAreaField, DateField, BooleanField from wtforms.validators import DataRequired from wtforms.widgets import CheckboxInput, PasswordInput class LoginForm(FlaskForm): ‘‘‘定义登录表单‘‘‘ username = StringField(‘用户名‘,validators=[DataRequired()]) password = StringField(‘密码‘, validators=[DataRequired()], widget=PasswordInput()) language = SelectField(‘编程语言‘, choices = [(‘cpp‘,‘c++‘),(‘py‘,‘python‘),(‘java‘,‘Java‘)]) code = TextAreaField(‘代码‘) date = DateField(‘日期‘) is_checked = BooleanField(‘是否已经通过验证‘) submit = SubmitField(‘登录‘)
时间: 2024-12-28 20:43:52