跳转到主要内容
TaskForge 3.0:AI 能读任务了
集成与工作流

Obsidian Dataview 任务管理:查询用法与无查询替代方案

Dataview 是将 Obsidian 笔记转化为动态任务列表的首选插件。本指南介绍最实用的 TASK 查询写法、Dataview 的优势与局限,以及 TaskForge 如何让你在任意设备上获得同样的筛选视图,无需编写一行 DQL。

今日到期或已逾期
TASK WHERE !completed AND due <= date(today) SORT due ASC
查看所有功能

Dataview 能为任务管理做什么

Dataview 是一款将你的仓库视为数据库的社区插件。其 TASK 查询类型会扫描所有笔记中的每个 Markdown 复选框,并在包含查询的笔记内将它们渲染为一个实时、可交互的列表。无需在文件间来回翻找,只需编写一小段查询,Dataview 便会随着你添加和完成任务自动保持列表更新。

值得掌握的 Dataview 任务查询

以下所有示例均需放入带有 dataview 语言标签的围栏代码块中。从简单的开始,随着需求增长逐步添加条件。

仓库中所有未完成任务

```dataview
TASK
WHERE !completed
```

列出所有笔记中未勾选的任务,适合放进仪表板笔记当作“总任务列表”。

今日到期或已逾期

```dataview
TASK
WHERE !completed AND due <= date(today)
SORT due ASC
```

筛选出截止日期为今天或更早的未完成任务,按日期从早到晚排序,作为你每天的“马上处理”视图。

特定项目或标签的任务

```dataview
TASK
WHERE !completed AND contains(tags, "#work")
```

将列表缩小到带有特定标签的未完成任务。可替换为你使用的任意标签、上下文或内联字段。

按来源笔记分组

```dataview
TASK
FROM "Projects"
WHERE !completed
GROUP BY file.link
```

从 Projects 文件夹中提取未完成任务,并按所属笔记分组,轻量级的项目概览。

Dataview 任务查询的局限

Dataview 擅长一件事:在桌面端查询你的仓库。可一旦你希望任务随身跟着你,几处短板就暴露出来了:

  • 以桌面为主:查询在笔记内渲染,没有主屏幕小组件。
  • 没有推送通知或提醒,Dataview 只展示任务,不会在任务到期时提醒你。
  • 需要编写并维护 DQL;查询里一个拼写错误,就会悄无声息地返回错误的任务。
  • 复杂查询在手机上可能卡顿,且结果是渲染列表,而非快速流畅的原生任务界面。
  • 它能读取你的仓库,但并非为随手记录、快速添加、拖放排序或看板与日历视图而设计。

同样的视图,无需查询语言

TaskForge 是一款原生应用,读取的正是你仓库里的那些 Markdown 任务。不用编写 DQL,点选选项就能构建筛选视图,而且在每台设备上都能用。

可视化筛选构建器

通过截止日期、优先级、标签、上下文、项目、状态等维度的 AND/OR 条件重现任何 Dataview 任务查询,并保存为自定义空间。无需语法,无需调试查询。

驻留主屏幕

把任意筛选列表放到主屏幕小组件上,直接在小组件里完成任务,这正是 Dataview 提供不了的移动端视图。

提醒与通知

筛选视图里的任务可以触发截止日期提醒和其他提醒,即使 Obsidian 已关闭也能及时送达。

不止于列表

以列表、拖放看板或日历查看同一批筛选后的任务,还能直接在视图里快速添加新任务。

Dataview 与 TaskForge 任务管理对比

两者要解决的问题有重叠,但用在不同的地方。下面是它们的对比。

单独使用 Dataview

  • 需编写 DQL 查询来构建每个任务视图
  • 结果在桌面端的笔记内渲染
  • 无小组件、提醒或通知
  • 非常适合仓库内的静态看板
  • 移动端交互和随手记录能力有限

TaskForge 配合你的仓库

  • 点选即可构建筛选视图,无需查询代码
  • iPhone、iPad、Mac、安卓、Windows 上的原生任务界面
  • 主屏幕小组件、提醒和到期通知
  • 以列表、看板和日历查看同一批任务
  • 直接在你的仓库中快速添加和编辑任务

各自的适用场景(或两者兼用)

这不是非此即彼的选择。Dataview 在桌面端 Obsidian 内构建自定义看板和报告方面无可替代,能将任务与元数据、表格和笔记融合在一起。当你需要任务在离开桌面后依然随手可及、可立即行动时,TaskForge 则是更好的选择,配备小组件、提醒和流畅的原生界面。很多人将 Dataview 看板用于桌面端的深度工作,同时用 TaskForge 在手机上日常记录和跟进任务,两者读取的是同一份纯 Markdown 任务。

几分钟内获得移动端视图

如果你的任务已经存在于仓库中,TaskForge 无需改动你的 Dataview 配置即可将它们呈现出来。

1

将 TaskForge 指向你的仓库

安装 TaskForge 并打开同一个 Obsidian 仓库。它会读取你现有的 Markdown 任务,无需迁移或重新格式化。

2

把查询改建成筛选条件

使用可视化筛选构建器,按照 Dataview 查询的相同条件构建自定义空间,例如本周到期且标有 #work 标签的未完成任务。

3

添加小组件和提醒

将列表固定到主屏幕,并开启提醒,让到期任务在出行时也能及时触达你。

常见问题

如何在 Obsidian 中用 Dataview 查询任务?

在 ```dataview 代码块中使用 TASK 查询。例如,包含 `TASK WHERE !completed` 的代码块会列出你仓库中所有未勾选的复选框任务。添加 WHERE 条件可按截止日期、标签或文件夹筛选,使用 SORT 对结果排序。查询会在 Obsidian 桌面端的笔记内渲染出可实时操作的任务列表。

Dataview 能显示今日到期或已逾期的任务吗?

可以。将日期比较与未完成任务筛选组合使用:`TASK WHERE !completed AND due <= date(today) SORT due ASC`。这会返回所有截止日期为今天或更早的未完成任务,并按最早优先排序。Dataview 需要能从任务中读取到截止日期才能匹配。

Dataview 在 Obsidian 移动端可以查询任务吗?

Dataview 查询可以在 Obsidian 移动端渲染,但没有主屏幕小组件、没有推送通知,且复杂查询在手机上可能较慢。如需在 iPhone、iPad 和安卓上快速浏览、随时操作的任务视图,像 TaskForge 这样的专用应用可读取同样的 Markdown 任务,无需任何查询代码就能展示筛选后的列表。

我需要学习 DQL 才能筛选 Obsidian 任务吗?

用 Dataview 的话,确实要用 DQL(Dataview 查询语言)写查询。如果不想写,TaskForge 的可视化筛选构建器支持 AND/OR 逻辑,能提供同样的筛选和排序任务视图,点选选项就能保存“本周到期、高优先级、#work”这样的列表,不用写任何查询。

你的 Dataview 任务,现在触手可及

TaskForge 会按原样读取 [due:: 2026-10-20] 这样的 Dataview 字段,仓库里的内容无需转换。保留你的查询,在每台设备上用上筛选任务视图、小组件和提醒。

Azhar Dewji
Azhar Dewji · 2026年6月14日 · 更新于 2026年7月18日

软件工程师,有 10 余年使用 Swift、Kotlin 和 Flutter 开发移动端与桌面应用的经验。独立开发者,现居加拿大多伦多。TaskForge 的开发者。 了解更多