一周学会Flask3 Python Web开发-SQLAlchemy添加数据操作-班级模块

锋哥原创的Flask3 Python Web开发 Flask3视频教程:

2025版 Flask3 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili

SQLAlchemy提供session.add()方法添加model实体数据,以及提供session.commit()提交事务。

首先list.html加一个添加链接

复制代码
<a href="/grade/add">添加</a><br/>

再定义下GradeForm表单类:

复制代码
class GradeForm(FlaskForm):
    name = StringField("年级名称", render_kw={'placeholder': '请输入年级名称'}, validators=[DataRequired()])
    remark = TextAreaField("备注", render_kw={'placeholder': '请输入备注'})
    submit = SubmitField("登录")

grade.py里加一个add()视图函数

复制代码
@grade_bp.route('/add', methods=['GET', 'POST'])
def add():
    gradeForm = GradeForm()
    if request.method == 'GET':
        return render_template('grade/add.html', form=gradeForm)
    else:
        if gradeForm.validate():
            data = gradeForm.data
            print('data:', data)
            print(data['name'])
            gradeModel = GradeModel(name=data['name'], remark=data['remark'])
            db.session.add(gradeModel)
            db.session.commit()
            return index()

grade目录添加下add.html

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form action="add" method="post">
    <table>
        {{ form.csrf_token }}
        <tr>
            <td>{{ form.name.label }}:</td>
            <td>{{ form.name }}</td>
        </tr>
        <tr>
            <td valign="top">{{ form.remark.label }}:</td>
            <td>{{ form.remark }}</td>
        </tr>
        <tr>
            <td>
                {{ form.submit }}
            </td>
        </tr>
    </table>
</form>
</body>
</html>

我们可以做添加测试:

相关推荐
雪芽蓝域zzs几秒前
第三十五节:Axios 统一错误拦截、401 Token 过期处理
前端·javascript·vue.js
sunshine22 girl2 分钟前
Java学习一 环境配置1 安装JDK,配置环境变量
java·开发语言·学习
XIE3926 分钟前
TipKit:开源富文本编辑器套件,一套逻辑,任意风格!
前端·笔记·开源
似水এ᭄往昔7 分钟前
【Qt】--常用控件(按钮类控件)
开发语言·qt
2601_962295997 分钟前
Spark 和 Kafka 实现 Python 大规模情感分析
python·spark·kafka·情感分析·大规模处理
计算机源码社11 分钟前
分享一个基于大数据的跨平台内容生态画像与互动等级分析系统,基于Hadoop+Spark的社交媒体互动数据可视化大屏分析
大数据·hadoop·python·机器学习·数据挖掘·spark·毕业设计
minhuan15 分钟前
基于Playwright数据采集,大模型对接Flask+SQLite,平滑升级向量库与分布式微服务26.5
人工智能·flask·大模型应用·大模型业务集成·微服务架构演进
砚底藏山河18 分钟前
行情工程实战 M01|存储选型 CSVSQLiteMySQL
java·python·金融·maven
范什么特西20 分钟前
一些常用名词
开发语言·前端·javascript
晴天1621 分钟前
前端打包工具全景解析
前端