阅读追踪器是 Notion 里最常被拿来练手、也最容易做到一半就放弃的模板场景。很多人以为只要照着别人的页面建几个数据库、贴上“想读 / 在读 / 已读”标签,就算是把系统搭好了。真正开始用的时候才发现:筛是能筛,但统计不直观;摘了不少金句,却想不起来是哪本书里的;系列书只看到单本状态,没法回答“这套还差几本”。这篇文章要解决的问题很直接:在 Notion 里搭一套能同时覆盖书库、阅读进度、系列追踪、金句摘录和基础统计的阅读追踪器,而且日常录入不能太繁琐。我会按真实落地顺序拆一遍,从建库结构、字段设计、公式统计,到视图布局和常见坑位,一步步讲清楚。
如果你已经在用 Notion,但对数据库属性、关联关系和 Rollup 还不太熟,这篇文章会很适合你。就算你从来没有读过一本“Notion 教程”,只要按文中的最小方案搭一次,跑完一本书的完整流程,后面再自己加功能也会容易很多。
1. 先想清楚:这套阅读追踪器到底要替你回答哪些问题
1.1 记录一本书,不是为了填字段,而是为了三个月后还能回答“我看过什么”
搭建阅读追踪器之前,先别急着新建数据库。你脑海中要有几个具体问题,比如:
- 我今年到目前为止读了多少本完整读完的书?
- 我最近在读哪些书,哪一本已经连续一周没更新进度了?
- 某一套系列书里,我读完了几本,还剩几本?
- 我摘录过的金句,分散在哪些书里?
- 我给五星的书,主要集中在哪个类型?
- 如果朋友问“最近有什么可读”,我能不能快速翻到一个靠谱列表?
这些才是阅读追踪器真正需要回答的问题。字段不是越多越好,而是每一项都要对应一个你未来会复盘的动作。
我见过很多人搭阅读追踪器时,一上来就加了一堆属性,比如“出版社”“ISBN”“装帧”“购买渠道”“读速”“心情标签”,结果录入一本书要花两分钟。新鲜感一过,书单就停在第三本,之后再也没打开过。
更合理的做法是先把一套“最不可能放弃”的字段建出来,让录入一本书的时间控制在 30 秒以内。等你真的坚持用了一个月,觉得某类信息很需要,再往原库里面加字段。在 Notion 里,给已有数据库新增属性并不会破坏数据,这个操作成本很低。
1.2 先建主数据库,不要一上来就做成“多个页面散落各处”
很多新手会犯一个错误:给每一本书新建一个独立页面,然后把书摘、笔记、读后感全写在页面里,最后根本没法汇总。
这里要区分一个关键概念:数据是一行一行放在数据库里的,不是散落在路径里的。在 Notion 中,你最终使用的是一张“阅读书库表”,每一本书占据一行。这一行里面可以打开成为独立页面,但它的所有属性必须结构化,这样后续才能筛选、分组、统计。
一个比较推荐的基础结构是:
- 主库:阅读书库,一行一本书。
- 关联库:摘录金句库,一行一条摘录。
- 视图面板:同一批数据,切换成不同视图。
如果担心一开始就搞两个数据库太复杂,可以先用“阅读书库 + 书页内嵌摘录”的方式撑过第一周。但一旦你希望统计“这本书摘了多少条金句”,或者想跨书、跨类型搜索摘录,就还是要单独建摘录库。这篇文章后面会重点讲这条路线。
2. 建库结构:一个主书库 + 一个摘录库,足够跑通大部分阅读场景
2.1 为什么不让“作者”和“系列”也单独建库
你在各种 Notion 模板里可能会看到“作者库”“出版社库”“系列库”“标签库”,看起来结构很专业,但维护成本也很高。作者改个名字、系列新出一本、出版社合并,都需要你去调整关联关系。
对大多数个人阅读追踪需求来说,主书库里用 Select 类型管理作者和系列就够了。
- 作者:新建一个 Select,想填的时候直接输入作者名,如果之前已经填过,会自动出现可选择项。
- 系列:新建一个 Select,同一系列用同一个名称,比如“三体”“哈利波特”“银河帝国”。
- 系列序号:用一个数字字段记录这是系列里的第几本。
这种方式的好处是录入非常快。缺点是当你点开“三体”标签时,它不会自动生成一个系列汇总页。不过可以通过视图按“系列”分组来弥补,后面第 4 部分会写。
只有当你的阅读库已经积累了几百本书,而且你很需要“每个系列的作者详情、每本书的出版社、全套是否读完”这种系统性统计时,再考虑把作者和系列升级成独立数据库。对大多数场景,这个动作不是必须的。
2.2 “摘录库”才是金句管理的核心
摘录库不需要很复杂,它本质上是所有金句的一行行记录。每条摘录必须关联到一本书,这样你才能从书的反向看到“这本书有哪些摘录”,也才能在未来做跨书搜索。
摘录库的字段建议最少这样:
| 属性名称 | 属性类型 | 用途 |
|---|---|---|
| 摘录内容 | Title | 保存这一条摘录的文字 |
| 所属书籍 | Relation | 关联到主书库,指向对应书籍 |
| 页码 | Number | 方便以后回到实体书里查找 |
| 摘录类型 | Select | 可选“金句”“人物观点”“写作手法”“灵感素材” |
| 创建日期 | Date | 记录什么时候摘抄的 |
这里最容易让人困惑的是:Title 属性放的是摘录内容,不是书名。因为摘录是一切的主体,所属书籍只是它的一个属性。
在录入时,你可以先打开某一本书的页面,然后快速添加一条摘录记录。这样“所属书籍”会自动填好,不容易串书。如果你是看到微信读书或纸质书以后随手抄录,也可以打开摘录数据库直接新建一条,再在“所属书籍”字段里选择目标书。
2.3 主库和摘录库的关联方式
在 Notion 中,建立关联需要用到 Relation 属性。你可以在主书库里直接打开属性面板,添加一个 Relation 属性,并选择刚才创建的摘录库。此时两个数据库之间会自动形成双向关系。主书库这边能看到“关联摘录”,摘录库那一侧也能看到反向的“所属书籍”。
之后在主书库中,为每一本书添加关联摘录;摘录库中每一条摘录的“所属书籍”也必须指向一本书。只要这个关系打通,后面统计、汇总才有可能。
一个需要注意的地方是:一个数据库可以拥有多个 Relation 属性,分别指向不同数据库;一个 Relation 也能指定是单条对应还是多条对应。阅读和摘录是一对多关系:一本书可以有很多条摘录,一条摘录只属于一本书。在 Notion 的日常操作里,你通常不需要手动设置一对多或多对多,选择目标数据库后,系统按实际情况显示即可。
3. 字段怎么设,才能让“统计 / 系列 / 金句”一起跑起来
3.1 主书库最常用的字段清单
为了保证基础统计,主书库可以参照这些字段创建:
| 属性名称 | 属性类型 | 我一般会这样用 |
|---|---|---|
| 书名 | Title | 数据库主标题,也决定每行页面的标题 |
| 封面 | Files & media | 把封面图拖进去,画廊视图会很好看 |
| 作者 | Select | 一个作者用一个选项,多个作者可考虑多选 |
| 类型 | Select | “小说”“历史”“科普”“方法”“心理学”等 |
| 系列 | Select | 同一个系列填同一个值 |
| 系列序号 | Number | 系列里第几本 |
| 状态 | Select | 未读 / 在读 / 已读 / 弃读 |
| 开始日期 | Date | 开始读这本书的日期 |
| 读完日期 | Date | 读完当天记录,便于按日历复盘 |
| 总页数 | Number | 书的总页数 |
| 当前页 | Number | 每次更新进度时填最新页码 |
| 评分 | Select | 用 1 到 5 星,也可以做成 0 到 10 分 |
| 短评 | Text | 一两句读后感受,方便以后筛选回顾 |
| 金句数量 | Rollup | 统计这本书关联了多少条摘录 |
这套字段看起来多,但真正需要手动录入的并不复杂。书名、作者、类型、状态属于新书入库时一次填完的信息;开始日期在开始读时补;读完日期和评分在读完时补;当前页属于高频更新字段,每读到一个章节点改一次就好了。
3.2 用“状态”字段管理在读、未读、已读
状态字段建议使用 Select 类型,因为 Select 支持彩色标签,还可以在看板 Board 视图中直接拖拽。
如果你目前书还没开始看,状态填“未读”;开始看就改成“在读”;读完了改成“已读”。如果你中途放弃,完全看不下去,可以使用“弃读”,不要让它永远躺在“在读”列表里,否则你的“当前在读”看板会越来越混乱。
配合状态使用,可以更合理地区分“录入时间”和“读完时间”。状态为已读时,才需要填评分和读完日期。判断“今年读了多少本”不要基于录入日期,而是基于读完日期。
3.3 用公式计算阅读进度
很多阅读追踪器里都会显示“进度 35%”这样的一列。这一列不用自己手算,让 Notion 公式自动生成即可。
前提是“总页数”和“当前页”都已经录入了数字。新建一个属性,类型选择 Formula,然后在公式框里写入类似这样的表达式:
if(empty(prop("总页数")), "无数据", if(prop("当前页") == 0, "还没开始", format(round(prop("当前页") / prop("总页数") * 100)) + "%"))这段逻辑是:
- 如果总页数还没有填,返回“无数据”。
- 如果当前页为 0,返回“还没开始”。
- 否则用当前页除以总页数,乘 100,用 round 取整,再拼一个百分号。
要注意:Notion 公式里的属性名称必须和实际属性名一模一样。如果字段名是“当前页码”,那公式里就要写“当前页码”。如果这步报错,不用怀疑,一定是属性名或者括号对不上。
公式字段的好处是不容易犯错,不需要你每次手动更新百分比。你只要更新“当前页”这个数字,公式字段会自动刷新。
3.4 系列管理:先用 Select,不够了再升级
系列书可能是阅读追踪器里最让人头疼的部分。因为很多人希望看到的不只是“这本第几册”,而是“这套一共多少本,我自己买了多少本,读完了多少本”。
初级阶段我建议直接在书库里给每本书填“系列”和“系列序号”。然后在书库创建一个按“系列”分组的视图,就能看到:
- 同一个系列的书被放在同一组里。
- 每本书当前是未读、在读还是已读。
- 根据组内书本数量,一眼能看出还差几本没读。
这个方法对大多数书迷完全够用。只有当你要管理的系列很多,并且希望统计每个系列的总评分、平均页数、已读率时,再单独创建一个“系列库”,然后用 Relation 指向书库。
做升级时要注意:不要把原来的 Select 直接删掉。比较稳的顺序是先把新系列库建好,再把所有书通过 Relation 关联到系列页面,确认统计结果没问题后,再删除原来的 Select 系列名。这样避免一次性重构导致大量数据错位。
3.5 阅读时摘录金句,应该直接用摘录库
看到金句就复制到浏览器里专门开一个页面?这是很多人坚持不下来的原因,因为每次都要切换窗口、新建页面、填标签。
在 Notion 阅读追踪器里,最推荐的做法是:
- 打开主书库,找到当前正在读的书。
- 点击这本书,进入它的页面。
- 在页面里嵌入摘录库的链接视图,筛选“所属书籍”为当前这本书。
- 发现金句时,直接在这个页面中间新建一行摘录。
这样做的好处是几乎不用额外选择书名,因为它已经被关联在当前书页里了。你只需要填入摘录内容、页码和类型,最多 10 秒。
如果你用的是手机端,也可以打开 Notion App,进入书库中这本书的页面,再添加一行摘录。不要在桌面端复制了一堆素材之后,又拖到 OneNote 里攒着,那是在给自己增加额外工序。
3.6 利用 Rollup 自动统计每本书的金句数量
当主书库和摘录库的关系建立好之后,就可以在主书库里添加一个 Rollup 属性了。
Rollup 的作用是从关联数据库中抓取信息并做统计,最常见的用法是“统计这本书关联了多少条摘录”。操作路径是:
- 在主书库中新建一个属性,类型选 Rollup。
- 选择需要统计的 Relation 属性,通常是“关联摘录”。
- 在统计方式里选择 Count all。
设置完成后,主书库会显示每一本书有多少条摘录。你会发现这个功能很顺手,因为以后不用翻进书里数,只要看一眼表格,就能知道哪本书里你摘得最多,哪本书虽然标了五星却没有留下任何记录。
Rollup 是 Notion 数据从“录入”走向“统计”的关键点。熟练掌握它之后,你甚至可以在摘录库里统计当前所有摘录的条数,做法类似。
4. 视图和页面布局:别让每次使用都从“搜索”开始
4.1 Table 视图负责录,Gallery 视图负责看
同一个书库可以拥有很多视图,这些视图之间可以共享同一套数据。你不需要把数据复制到多张表格里。
我常用的视图组合是:
- 全部表格:字段多,用来批量录入和检查数据。
- 在读画廊:只显示“状态”为“在读”的书,用封面图片铺开,像书架一样。
- 已读日历:按照读完日期展示成一页日历,每个月翻一翻,会很有成就感。
- 系列分组:按“系列”字段分组,查看全套书目前的状态。
- 想读清单:筛选“状态”为“未读”,用列表展示。
第一次创建这些视图时,需要做一遍“筛选”。筛选条件是 Notion 数据库很好用的功能。例如在读画廊视图只需增加一个筛选:状态是“在读”。当你把某本书状态改成“已读”后,它会自动从画廊视图里消失,因为它不再满足筛选条件。
4.2 Board 看板视图适合拖拽更新状态
Board 看板是打卡型阅读管理里少不了的视图。把“状态”设为看板的分组依据后,你会看到类似下面这样的结构:
- 未读列
- 在读列
- 已读列
- 弃读列
读完一本书后,直接从“在读列”把这个卡片拖到“已读列”,比手动打开页面改 Select 字段快得多。
这个动作非常符合阅读追踪器的“轻维护”理念:卡片拖过去之后,那条记录的“状态”就已经同步修改成“已读”没跑了。如果还想让“读完日期”在拖动时自动生成,Notion 本身不会自动完成这个动作。你需要在已读视图里手动再填一次日期,或者使用数据库模板按钮配合实现升级效果。最基础的阶段,拖完之后在属性栏补个日期就行。
4.3 用 Linked Database 做一个主页仪表盘
主书库和摘录库都建好之后,每次打开 Notion 还要从左边菜单里去翻数据库,效率并不高。更好的方式是在一个“阅读追踪器”主页中嵌入多个数据库链接视图。
Notion 的“链接视图”可以把一个数据库以不同视图嵌到页面的不同位置。建议在主页里这样排布:
- 顶部放几个标题区块:“当前在读”“今年的阅读记录”“金句档案馆”“系列进度”。
- “当前在读”下面嵌入书库的在读画廊视图。
- “今年的阅读记录”下面嵌入已读书籍的表格视图,筛选读完日期为本年。
- “金句档案馆”下面嵌入摘录库的全部列表,可以按创建日期倒序。
- “系列进度”部分直接用主库按“系列”分组的视图。
这样几乎每个区域都只显示需要的信息,而不是让人面对一整张字段繁多的表格发怵。
4.4 网页版登录和多端使用时的注意点
如果你平时会用到 Notion 的网页版,需要注意:网页版登录后使用的数据和你电脑客户端、手机 App 是同一套工作区数据。只要登录的是同一个账号、同一个工作区,你在一端更新当前页数字之后,另一端刷新后也会同步。
不过 Notion 的网页版更适合浏览和快速录入,不适合做大量复杂页面排版。尤其是当数据库视图很多、关系复杂时,浏览器加载可能会变慢。如果发现网页版操作卡顿,建议优先使用电脑客户端完成排版和公式调试,日常录数据用手机端会更轻。
这个项目属于个人效率管理工具,不涉及网络代理等任何额外工具,只要你能正常访问官方网页版并登录账号即可。多端同步不是把文件传来传去,而是所有数据实时存在同一个工作区里,所以不要自己复制一套数据库到本地。
5. 从今天正在读的这本书开始:先跑通一条完整流程
5.1 不要从“整理所有旧书”开始
很多人搭建阅读追踪器的第一反应是:把自己过去看过的 200 本书全部录入数据库,再补上封面、评分和摘录。这个动作太容易劝退。
正确的起步方式是从“我现在正在读的这一本”开始。旧书以后再慢慢补,先把新流程顺起来。
你只需要新建一个数据库页面,然后录入一本书:
- 书名:你正在读的那本书
- 作者:作者名
- 类型:随便填一个,例如“小说”
- 状态:在读
- 开始日期:今天
- 总页数:从书的版权页或电子书信息里填一个数字
- 当前页:今天读到的真实页码
其他字段全部留空。封面想留好看一点,就拖一张图;不想现在处理,后面也能补。
5.2 记录碎片化,但要选对触发点
不要每读两页就拿出来更新一次,那会打断阅读节奏。比较自然的触发点是:读完一章、中途休息、准备放下书、切换另一本书的时候。
在这一刻,打开 Notion,找到这本书,更新“当前页”即可。如果今天读完了一本,就把“状态”改成“已读”,“读完日期”选今天,“评分”按现在的感觉填一下。超过五秒没想好评几星,就先用默认三星,后期想改了再调整。
这种“片段式维护”的好处是不需要每天专门抽出半小时整理。真正坚持阅读记录的人,通常都不会把记录当成额外任务,而是把记录融进“读书结束”这个动作里。
5.3 摘录金句时,先别想着分类和标签
记录金句最容易出现的另一个坑是:看到一句话,心里开始纠结它应该属于“人生感悟”还是“写作金句”,纠结的结果大多是放弃记录。
我的建议是:第一版只保留摘录内容、所属书籍、页码三个字段。看到句子就抄,压根不管分类。等积累了几十条之后再看看,如果真的很需要筛选“写作技法类”,再给摘录库增加一个 Select 字段。
原因很简单,一个人的分类框架会随着阅读量变化。你现在想的“金句类型”可能一周以后就变了。前期把分类做得很死,反而会成为负担。让系统先跑起来,再逐步优化,比一开始就追求完美有效得多。
5.4 阅读过程中,如何保持页面不混乱
很多人在书库的数据量增长之后,会开始觉得页面“有点乱”。这往往不是 Notion 的问题,而是所有字段都在同一个表格视图里显示的问题。
你可以尝试把字段区分成“录入区”和“展示区”:
- 录入区:书名、作者、类型、状态、总页数、当前页。
- 展示区:进度公式、金句数量 Rollup。这两个可以在表格中显示成只读列,不需要录入。
如果觉得表格里的公式列和 Rollup 列太多,就把它们从当前视图里隐藏起来,只保留在需要检查统计的视图里显示。Notion 的视图可以自定义显示字段,所以不会因为字段多就“一排排全是数字”。
5.5 第一次“读完一本书”之后,做一次复盘
当你跟着流程记录完第一本书后,不要急着马上调整整个数据库。先花两分钟看一下:
- 你这次填写了哪些字段?
- 哪些字段在读完前完全没用到?
- 哪些字段填起来感觉很烦躁?
- 摘录库的记录数量和主库的关联是否正确?
你可能会发现“系列序号”这一列几乎没有用过,因为这本书不是系列。这个字段不用删,留着以后遇到系列书再填。你可能会发现“当前页”没有每次更新,这很正常,因为你不是每读几页都打开 Notion。没关系,阅读追踪器不是打卡软件,进度更新粒度自己掌握就好。
这一轮跑通之后,你才真正理解了自己的记录习惯,再回去调整字段、视图和公式,会比照抄一套模板要靠谱得多。
6. 高频坑点与排查顺序:关联、公式、统计为 0,都从这几步开始查
6.1 状态字段总是变成普通文本,导致看板无法分组
如果主书库的“状态”属性是 Text 类型而不是 Select 类型,看板就无法按状态灵活分组,拖拽功能也会受限。
排查方法:点开“状态”字段的属性设置,如果不是 “Select” 类型,就新建一个 Select 属性,把原来的文本值逐个粘进去,再重新选择。以后录入状态不要用“纯文本”,要用 Select 标签。
如果你已经有很多书填过状态,手工换属性确实麻烦。更省力的方式是重新建一个 Select 属性,然后在原有图书页面上批量选择。数据量在一两百本以内时,花十分钟能改完。以后每次录入就顺手点标签。
6.2 Relation 关联不出来,通常是方向或属性没建对
如果你在书库里找不到“关联摘录”这个属性,很可能是因为当时只在摘录库建立了指向主库的 Relation,却没有在主库建立反向关联。Notion 里虽然会自动形成反向关系,但有时会因为你的操作顺序和不同版本界面差异而产生混乱。
排查顺序可以这样走:
- 打开主书库,查看属性列表里有没有类似于“关联摘录”的 Relation 属性。
- 如果没有,就新添加一个 Relation 属性,选择摘录库。
- 检查这条 Relation 是否允许选择多本 / 多条,确保它不是非要去掉反向。
- 打开一本已有摘录的书,看看“关联摘录”下面是否能看到已有的摘录。
如果看到了,说明关联关系已经建立。如果没有,返回摘录库,确认每条摘录的“所属书籍”都填对了。很多时候只是某条摘录没有选择书,所以看不出关系。
6.3 Rollup 结果显示为 0 或空
Rollup 为 0 有两个常见原因:
一是主书库里没有关联任何摘录。需要先检查摘录库里的“所属书籍”字段是否都已经指向主书库的记录。只要指向了,主库这边的 Relation 属性才会出现对应内容。
二是 Rollup 属性选择错了。创建 Rollup 时,第一层选择的应该是 Relation 类型属性,而不是直接选“书名”或一个文本字段。选完后,第二层才会出现可以统计的“目标属性”。如果你选的是文本字段然后选择统计 Count,它可能统计的是文本是否为空,而不是摘录条数。Rollup 的统计对象,应该是一对多关联那一侧里的每一行记录。
修正后再回到主书库表格,如果还是显示 0,就刷新一下页面。Notion 的 Rollup 有时不会秒更新,刷新大概率能解决。
6.4 公式报错:大部分时候是属性名不一致
Notion 公式的语法并不算难,最常见的错误是:
- 属性名中英文空格不对。
- 属性名有英文括号或特殊符号。
- 引号用了中文引号。
- 函数字母拼错,round 写成了 rounder。
- Formula 属性不能直接写字符串拼接,要用 format() 包裹。
我给你的解决方法是:写公式时不要凭记忆,打开属性面板,复制真实的属性名,再粘到公式里。括号和逗号都使用英文半角。写完后,公式框下方如果出现红底提示,优先检查第一处引用的属性名。
公式这种功能,只要你不是一次编写特别复杂的逻辑,通常调整几次就能正常工作。不建议上来就写十几个判断条件的公式,先保持简单,以后阅读库稳定了再优化。
6.5 阅读记录越来越多以后,注意给数据库做年度归档
当一本书的属性和摘录持续累积两年以后,数据库里的数据量可能会增长到几千条。Notion 个人使用这个量级通常不会卡,但视图复杂、过滤器多,依然会影响加载速度。
比较稳妥的做法是:每年在“阅读书库”中增加一个“入库年份”Select 字段,然后针对每本书填上年份。后续的大视图都默认过滤当前年份,历史书籍数据并不是删掉,而是换一个视图再看。摘录库也可以按创建日期给视图加年度筛选。
这样可以在不破坏数据结构的前提下,一直保持日常界面清爽。
6.6 套用别人的模板之后,为什么反而用不顺手
很多 Notion 模板创建者会把自己的字段命名为英文,比如 Author、Series、Quote,还会用复杂的 Rollup。你导入模板后,如果不熟悉原作者的命名,就很难排查。
我的建议是:模板只能作为灵感来源,不要拿来后直接开始录书。先花一天拆开它的每一个视图,看看哪个字段是用 Title 做的,哪个字段是公式,哪个字段是数据库中自动生成的。如果你不想花这个时间,那就按照本文的方案自己从零建一次,十分钟能做完,之后不会再出现“不知道字段从哪来”的情况。
阅读追踪器不是越强大越好,而是越适合你的录入习惯越好。我个人的习惯是:把记录动作压缩到最简单,把统计动作交给 Notion 的表头分组、公式和 Rollup。抄录金句时,也不追求一次分类完美,先存下来,读完一本书再统一整理。这样坚持下来,才能真正把所谓的“追踪器”变成一个长期使用的个人阅读数据库。