开源多维表格SmartTable v1.6.10 —— 用户名登录、数据评论及@人、表单分享二维码、性能优化、部署及升级优化

0 阅读9分钟

开源多维表格SmartTable v1.6.10 —— 用户名登录、数据评论及@人、表单分享二维码、性能优化、部署及升级优化


一句话总结:这版主要干了这几件:💬 记录评论与 @提及——表里面每条记录都能开聊、喊人;📱 表单分享二维码——扫一下就能填表;🔄 版本检测与自动更新——新版本主动提醒你,避免历史缓存的问题;👤 用户名登录——不绑邮箱也能登系统了;性能和安全:优化大表性能、搜索分页更轻、脚本沙箱 / SSRF / SQL 注入 / XSS 等等一系列安全加固。最后划重点——这版升级有讲究,记得先备份再升。


一、这版最大的变化是啥?

上一版(1.6.9)把表分享、公式自检、部署稳定性这些铺好了。1.6.10 这版呢,像是在"把协作做厚+底盘加固"——协作上多了记录评论、表单二维码、版本提醒、用户名登录这些实打实好用的东西;性能上把大表性能做了系统的优化;安全上更是集中加固了一圈,从沙箱、注入到密钥默认配置都动了。

  • 记录评论与 @提及:每条记录下面能直接聊、能喊人,讨论不用再满世界跑。
  • 表单分享二维码:分享出去的表单能出二维码,扫码就填。
  • 版本检测与自动更新:系统自己会提醒你有新版本,不用担心用户不会在系统升级的清理缓存。
  • 用户名登录与管理:邮箱、用户名都能登,后台管账号也顺手了。
  • 性能:大表(1400+ 条)卡死修了,搜索分页、异步预取让大列表轻快不少。
  • 安全:DEBUG 禁用、CORS / SQL 注入口子堵上、登录限流升级、脚本沙箱防逃逸、SSRF 防护、XSS 策略、依赖升漏洞……"底盘"稳多了。
  • 升级有讲究:这版涉及库表变更,升之前一定先备份(详见第九节)。

下面分开唠。


二、记录评论与 @提及:表里面也能"聊"起来了 ⭐

这块是给所有拿表格做协作、做项目的朋友准备的。

以前想在一条记录下面讨论点啥,基本只能跑去群聊或者另开个文档,上下文全散了,过两天谁说了啥都找不着。这版给每条记录加了评论,还能 @ 提及同事——谁该看、谁该跟进,@ 一下就推到他眼前,不用再满世界喊"谁来瞅瞅这条"。

在这里插入图片描述 在这里插入图片描述

说白了,表格不再只是"填数据的格子",也能当个小协作现场了。做需求跟进、工单、审批流的朋友,这版能明显感觉到省心。


三、表单分享二维码:扫码就能填

做表单的朋友有福了。这版给表单分享加了二维码——你分享出去的表单,现在能直接出个二维码,贴群里、印海报、发邮件,别人扫一下就进表单填,省得复制一长串链接还容易复制漏。


四、版本检测与自动更新:新版本主动提醒你,自动清理前端缓存

这功能对用户和运维都友好:系统现在会自己检测有没有新版本,有更新主动弹提示,不用你天天盯着 release 页或者群公告。

对于自己部署的朋友,这等于多了个"该升级了"的小闹钟——不用你天天盯着用户手动清理缓存了。

在这里插入图片描述


五、用户名登录与管理:不用只绑邮箱了

以前登录基本绑邮箱,有些同事压根不想暴露邮箱、或者习惯用用户名,就有点别扭。这版加了用户名登录——邮箱和用户名都能登,老用户不用改习惯,新同事起个用户名就行。

后台也补了用户管理对应的字段列。


六、性能:大表性能优化

用大表的朋友这版能喘口气,挑干的说:

  • 修了大表卡死:以前表到 1400+ 条,翻着翻着后续请求就转圈转不动,这版把这个问题收拾了,大表也能顺顺当当翻。
  • 搜索下推分页:后端搜索改成了下推分页,前端也清理了一波,列表查询压力小了。
  • 异步预取:加了异步预取,在表里切来切去响应更快。

一句话:表越大,这版越能感觉到差别。


七、安全:这版把"底线"加固了一圈

安全这事儿平时不显山露水,真出事就晚了,特别这段时间IT圈出现了一大波安全问题,搞技术的应该都看到新闻了。SmartTable作为一个Web应用系统,安全也始终放到重要的位置,这次针对性的做了很多安全加固:

  • 生产环境不再允许开 DEBUG,免得报错信息把敏感东西漏出去;
  • CORS、SQL LIKE 注入这类老生常谈的口子都堵上了;
  • 登录限流改成双维度标识,暴力破解更难得逞;
  • 默认管理员密码没改会有提醒,弱口令风险降一截;
  • 脚本沙箱加了深度防御(防逃逸),SSRF 防护抽成公共工具,用到了 Webhook 和插件代理;
  • 通知日志做了 HTML 安全渲染,上传 / 下载也加了安全策略防 XSS;
  • 第三方依赖和一堆组件也都升了,把已知漏洞能补的都补上。

八、修了哪些 Bug?

这版修掉的老坑不少,包括但不限于:

  • 实时协作更稳:修了 flask-socketio 5.x 实时支持误判的问题,多人同时编辑不那么容易"假死"。
  • 表格渲染一串糟心事儿:表格末尾新增行不显示、要刷新才出来、新增行位置错、大表末尾缺新增按钮、统计对不上——根源是新增行被虚拟行的标记污染(显示成 __add_button_ 那种),这次一并收拾干净了。
  • PostgreSQL 修了两处:varchar 列宽溢出、operation_history 序列错位(感谢 jonathanwong0086 的 PR)。
  • 数据库稳了:SQLite 并发锁偶发 500、PostgreSQL 连接启动失败、SQLite Alembic 事务问题都根治了。
  • 小坑也填了:登录后白名单跳转、登出返回值判断、SMTP 配置校验、模板里创建时间被错改成时间类型、Docker 下 SQLite + eventlet 兼容性,都修了。
  • 企业内网对接:泛微 E10 单点登录接进来了(感谢 ssdfcc 的 PR),内网统一身份认证更方便。

九、升级提醒(重点!)

这版升级有要求,一定看完再动,尤其是库表结构有变更:

  1. 升级前先备份数据库(最重要):虽然这版会在升级前按需自动备份(SQLite 和 PostgreSQL 都支持),但还是建议你手动先备一份,特别是有重要数据的库。原因看下一条。
  2. 为啥这么强调备份:这版修了做了很多大的底层的优化——取消了 SQLite 外键强制度、改了迁移逻辑,既堵住这个丢数据的风险,也让升级本身更稳。换句话说:这一版值得升,但升之前务必留好退路。
  3. 数据库会自动迁移,别手改表:这版新增了评论相关的表、用户名登录要的字段等,启动时会走 Alembic 自动迁移,正常启动就行。千万别自己手动去建表改字段,容易和迁移"打架"把库搞坏。
  4. 环境变量要配对:这版把"没设环境变量就默认用开发环境"的安全漏洞堵了。如果你生产环境之前图省事没认真配 SECRET_KEY / JWT_SECRET_KEY,升级后务必补上,否则可能起不来或者登录态串号。
  5. Docker 用户拉新镜像:Dockerfile 这版修过"编译后误删 migrations 目录 .py 文件"以及 SQLite + eventlet 兼容问题,老镜像升级请直接用最新镜像;旧的 run.py 启动方式仍然兼容,不用改脚本。
  6. PostgreSQL 用户:这版有 varchar 列宽和序列对齐的迁移,自动跑就行,不用手干预;要是之前 operation_history 序列错位导致报错,升完这版就好了。

十、关于 SmartTable

SmartTable 是一个开源的多维表格系统,功能上类似飞书多维表格、WPS 多维表格(金山文档多维表格)。

核心特性

  • 27 种字段类型:文本、数字、日期、单选、多选、成员、附件、公式、关联、查找、地理位置……基本能想到的字段都有
  • 7 种视图:表格视图、分组视图、看板视图、日历视图、甘特图视图、表单视图、画廊视图
  • 主从表 + 树形层级:记录能挂明细,也能建父子层级
  • 70+ 个内置公式函数:数学(支持运算符)、文本、日期、逻辑、统计、跨表引用
  • 完整工作流引擎:循环、查找记录、发送邮件、记录时间触发器、自定义 Python 脚本
  • 插件扩展体系:前后端都能写插件,附官方示例,想加啥功能自己来
  • 实时协作:多人同时编辑,带单元格锁和冲突检测
  • 第三方应用接入:OAuth2 + 开放 API + 应用审计日志
  • 多语言:界面支持中文 / 英文,自动跟随系统语言
  • 多个 Base 模板:会议管理、学习计划、Bug 追踪、招聘管理、资产管理、OKR
  • 仪表盘系统:KPI 卡片、图表、实时数据展示、分享
  • 文档管理:富文本、Markdown、PDF 导出、版本历史
  • 一键启动:下载 release 包双击即可
  • Docker 一键部署:内嵌 Redis
  • 支持 SQLite 和 PostgreSQL

快速体验

# 下载 release 包解压后双击 start.bat
# 或 Docker 一键启动
docker run -d -p 80:80 -e JWT_SECRET_KEY=改成你的自己的key值 -e SECRET_KEY=改成你的自己的key值 ygbinac/smarttable:latest

关注作者

如果 SmartTable 对你有帮助,欢迎关注作者,第一时间获取更新动态和技术干货:

平台账号 / 链接
🌐 GitHubgithub.com/ldbinac/sma…
🇨🇳 Giteegitee.com/binac/smart…
🇨🇳 GitCodegitcode.com/binac/smart…
💬 V-信-公-号程序员吕洞宾
📝 CSDN程序员吕洞宾
📘 稀-土-掘-金程序员吕洞宾
🧠 知-乎程序员吕洞宾

👉 老铁们,GitHub 点个 Star 就是最大的支持!