Flask03 Web表单
我将使用表单进行登录、注册、提交动态等。
Flask插件flask_wtf,使用Python类来表示Web表单。
(venv) $ pip install flask-wtf
有关虚拟环境使用可以参考教程:https://blog.csdn.net/qq_44643484/article/details/123251333
点击查看代码
from flask_wtf import FlaskForm
from wtforms import StringField, PasswordField, BooleanField, SubmitField
from wtforms.validators import DataRequired
class LoginForm(FlaskForm):
username = StringField('Username', validators=[DataRequired()])
password = PasswordField('Password', validators=[DataRequired()])
remember_me = BooleanField('Remember Me')
submit = SubmitField('Sign In')
我直接从WTForms包中导入了四个表示表单字段的类。每个字段类都接受一个别名作为第一个参数,并生成一个实例来作为LoginForm 的类属性。
可选参数 validators 用于验证输入字段是否符合预期。DataRequired 验证器仅验证字段输入是否为空。
表单模板
这种的,前端的问题暂且略过,主要学习后端知识。完成这个表单需要是编写一个新的视图函数来渲染上面创建的模板。
from flask import render_template, flash, redirect
@app.route('/login', methods=['GET', 'POST'])
def login():
form = LoginForm()
if form.validate_on_submit():
flash('Login requested for user {}, remember_me={}'.format(
form.username.data, form.remember_me.data))
return redirect('/index')
return render_template('login.html', title='Sign In', form=form)
form.validate_on_submit(),如果是get请求,就会直接返回。如果是post请求则会先进入判断,True,返回结果,error则报错。
分类:
Flask
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)