不用Excel怎么收学生数据并自动校验
来自夹夹 QQ 群讨论,审核后公开 · 。查看原始讨论
不要用 Excel 当录入界面,改成网页表单加字段校验加结构化存储,前端挡手误、后端兜底,坏数据在结构上进不来。
要点
- Excel 是自由编辑的任意格式文件,下游只能靠猜;换成字段可设必填、类型、枚举与正则的表单工具,填错时在提交那刻就被拦下。
- 腾讯问卷、金数据、飞书多维表格都能定义字段类型与取值范围;飞书多维表格还带表格视图,对填写者更直观。
- 字段固定时可以自己写单页表单,用 number、date、maxlength 加正则做前端校验,能挡掉大部分手误。
- 前端校验可被绕过,入库前还要再校验一次:数据库加非空、类型、唯一约束,应用层校验语义范围如成绩 0 到 100。
- 别人交来 Excel 文件时的自动检测只是补救:检查表头、逐列判断类型与枚举,不合格整体退回,用 pandas 加 pydantic 实现,不要替人猜列。
- 长期值得投入的是查自己库里的逻辑矛盾,如重复提交、姓名与学号对不上、字段缺失率异常;另给一份带示例的填写说明比任何校验都省事。