多维表
类 Notion 的表格数据库:多种列类型、多视图、筛选排序统计,可嵌入笔记、仪表盘与分享页。
多维表是 Amadeus 的结构化数据容器:管任务、追进度、记账、做清单。每张表是库里一个独立文件,可以嵌入任意笔记,也可以单独打开。
创建与嵌入
笔记里输入
/,选择"数据库",当场插入一张新表;已有的表用
![[表名.db]]嵌到别处——同一张表,处处同步;写
[[时,补全候选里就有多维表,不用先记住它的路径。见双链与属性。
嵌进正文的表可以直接编辑。点击单元格、选择文字和切换视图都会留在数据库中;只有显式的 </> 按钮才编辑嵌入引用源码。切换视图保留当前搜索与数据库实例。
连续编辑
点击文本、数字、日期或链接单元格开始编辑;输入过程中保留草稿,排序与筛选不会随着每个字跳动。
Enter 提交并移到下一行,Shift+Enter 移到上一行;Tab / Shift+Tab 提交并连续编辑下一格/上一格。
Escape 取消本次草稿;点到别处提交。中文输入法选词时的 Enter 不会提前提交。
单元格选中时可用方向键移动,直接输入开始编辑;标题旁的打开按钮用于打开记录,编辑标题不会跳转。
单选/多选菜单可以搜索,使用方向键和 Enter 选择,也可以输入名称创建选项。
列类型
| 类型 | 用途 |
|---|---|
| 文本 | 任意文字,支持 [[双链]] |
| 数字 | 数值,可参与统计 |
| 勾选 | 是 / 否 |
| 日期 | 日期值,可上日历 |
| 单选 / 多选 | 从选项池中选,选项带颜色 |
| 链接 | URL |
| 关联 | 搜索并链接到库里的笔记,点击 chip 直达 |
| 附件 | 上传文件存进库里;图片给缩略图,也是画廊卡片的封面 |
| 公式 | 按其他列计算:{单价}*{数量}、if({完成},"✓","…"),支持四则、比较、round/concat/days 等函数 |
| 关联表 | 关联另一张多维表的一行(可设为多值);chip 上显示哪一列由「芯片显示列」定,缺省是对方首列;还可「限定候选」只让人从符合条件的行里挑 |
| 引用 | 沿关联表列取出目标行的某一列(可选计数/求和/平均/拼接聚合);反向引用可切成可编辑投影,见下 |
| 人员 | 人名(值就是显示名);候选来自库里已经填过的名字 |
| 自动编号 | 新行自动递增编号,可带前缀 |
| 创建时间 / 修改时间 | 建行、改行时自动盖章,不可手填 |
数字列还能设小数位与单位前后缀(如 ¥ / 元 / %)——只影响显示,存进文件的仍是纯数字;点进去编辑时看到的也是原始值。附件列可以放多个文件,再次上传是追加而不是替换。
双向关联:一处真值,两头可改
关联是单向存值的:真值只写在关联那一侧。反过来那一侧(引用列指回本表时)可以打开「作为可编辑关联」——它渲染成和关联列一样的 chip,也能点开挑行,但自己不存值,改动直接落到对方表的那一列上。于是两头看起来都能编辑,底下始终只有一份真值,不会出现两边对不上的账。
普通引用列与投影列的分工:投影列 = 关联本身(挑谁),普通引用列 = 沿着关联取值或聚合(拿对方的某一列)。
多视图
同一张表可以建多个视图,各自记住自己的筛选、排序与列配置:"全部任务"、"只看未完成"、"按截止日排序"来回切换,数据只有一份。每个视图可以选表格、列表、看板、日历、画廊、图表、表单、甘特八种呈现方式之一。视图菜单里的「复制视图」复制当前配置,不复制记录;工具栏的「排序」提供独立入口。
列表视图:紧凑地展示记录标题与可见属性,点击记录打开详情,同样沿用当前视图的筛选与排序;
表单视图:纵向排列可填字段(计算列与自动盖章的列不出现),可设必填、默认值、字段说明与提交后行为(留在表单继续填 / 跳到表格)。提交一次 = 新增一行,适合让人按流程录入而不是直接在表格里改;
甘特视图:按日期列把行画成时间轴上的横条,可按日/周缩放,有今日线;没填日期的行排在最后。目前是只读的,改期请到表格或日历。
每视图独立列序/列宽:视图菜单里打开这个开关,该视图就记住自己的一套列顺序与列宽;不打开则跟随全表(默认)。首列是标题列的铁律在视图里同样成立。
筛选、分组、排序、统计
表格和列表的自适应列宽、分组、行折叠统一从视图设置的「布局」区进入;分组与行折叠面板可直接返回设置,保留已选配置。 工具栏保留筛选、排序、搜索与新建等常用操作。每个视图分别保存布局配置。
筛选:按任意列的条件过滤行,多条件可选全部满足 / 任一满足,条件存进视图;
分组:表格视图可按单选列分组,组头带计数、可折叠,组内新增自动带上组值;也可按日期列分组,分「按日 / 按月」两档,没填日期的行归「未设置」并恒排最后;
层级树:表格视图可以指定一个「指回本表」的关联列当父列,行按父子缩进显示、可折叠。父行被筛掉的子行当作根显示;遇到成环则整表退回平铺(不丢行);
排序:多列排序,逐层比较,视图菜单里点击列循环 升→降→移除;
行序:表格视图里可以手动调整行的先后顺序(无排序/筛选/分组时);
列序:直接拖表头即可换列的位置,列菜单里也有「← 左移 / 右移 →」(触屏/键盘用)。列序对全表生效(不分视图),且不受排序/筛选/分组影响。⚠️ 首列是标题列——看板/日历/画廊的卡片标题、以及别的表关联芯片上的文字都取自它,所以它位置固定,拖不走、也插不到它前面;
统计:列底部可显示汇总——计数、求和、平均等,记账表的合计一眼可见;
导出 CSV:按当前视图的可见列与筛选后的行导出,不是整表。
行详情
标题旁的打开按钮、列表条目以及看板/日历/画廊卡片均可打开记录详情。表格、列表、看板和甘特默认使用侧边预览,侧栏外的数据库仍可操作;画廊与日历默认使用居中预览。详情顶部可切换侧边、居中和展开预览,打开方式跟随视图保存,并可切换上一条/下一条记录。
普通数据库记录在属性下方有可直接编辑的正文,支持段落、Markdown 格式输入和格式化内容;正文与属性保存在同一条记录中。刚输入就关闭详情或切到下一条,也会保留内容。修改属性后即使当前记录不再满足筛选条件,详情仍保持打开。
笔记文件夹数据源继续使用原笔记正文,不生成另一份数据库正文。当前记录正文编辑器尚不提供笔记主编辑器的 / 块菜单、附件上传与双链补全;展开预览也不是一个独立笔记标签。
文件兼容:本版可读旧的 v1 数据库;保存记录正文会将该表提升为 v2,以免旧应用忽略并丢弃正文。新建表使用 v2。多端访问同一张表时,各端都需要支持 v2;旧客户端会提示升级并进入只读保护。
上日历
带日期列的表可以加入日历:在日历空间把这张表勾选为成员,行会按日期落在日历格子上,拖拽即改期。见日历。
接自动化
多维表和自动化是双向打通的:
表的内容变化可以当触发条件——有行被加进来、某个单元格被改动(可附「新值等于某项」的条件),就触发一条规则;
自动化的动作可以动表——往表里加一行,或者改一行的字段(值里可写
{{row.列名}}引用触发行)。
这些都能直接在自动化空间的可视化构建器里配置。"表里某行被标成完成就发条通知"、"每天早上往值班表里加一行"都是一条规则的事。
摆到别处去
AI 也会用表
多维表对 AI 可见可写:"把这个待办表里逾期的行列出来"、"往读书表里加一行《三体》"都可以直接说。
阅读与排版
数据库的内容、辅助信息和标题接入 Genesis 全局六档界面字号。内容与列名保持紧凑,菜单操作对齐笔记「更多」菜单的阅读尺度, 工具栏、标签与计数退一级;日期保持普通文字形态,减少数据行中的装饰。 界面字体跟随外观设置,记录正文跟随正文字体,公式使用等宽字体。 属性、视图和菜单操作使用同一套线性图标,菜单标题、操作名与辅助说明保持清晰层级。
进入编辑时文字位置与行高保持稳定。自动列宽同时考虑字号和内边距;手动列宽沿用用户设置。 窄窗口下工具栏换行、表格横向滚动、菜单纵向滚动,保持可读字号。
属性菜单通过「更改类型」进入完整类型列表,选定后返回配置;按 Escape 也可返回,焦点回到原入口。
开发规范见仓根 DESIGN.md,
数值集中在 desktop/frontend/src/styles/base.css 的 --db-* token,
实现说明见 genesis-database-ui skill。
视觉验收:在 desktop 先构建,再运行 npm run e2e:dbvisual,查看中英混排、深浅色和窄窗口截图。