文章目录
DataView 的使用
一、 环境配置
首先,我们需要安装 Obsidian,同时,在这里 Obsidian 的基本使用就不会去介绍了。
Dataview 是一个覆盖OB知识库的实时索引和查询引擎。可以将数据(如标签、日期、代码段、数字等)与笔记相关联,然后查询(如筛选、排序、转换)数据。用一种数据库处理的形式,通过查找字段并筛选,进而使用列表、表格的形式展现出来,也支持JavaScript的高级查询形式。
安装方式:
或者,我们也可以使用 GitHub 来进行安装,我们将文件下载下来,解压到<vault>/.obsidian/plugins/
。
二、 入门介绍
1、 快速开始
官方文档:https://blacksmithgu.github.io/obsidian-dataview/
Dataview 是一个在你的知识库中生成数据的动态视图的高级查询引擎/索引。你可以通过使用任意和页面相关联的值,如标签(tag),文件夹(folder), 内容(content),或者字段(field)来生成视图。
我们可以使用 ::
来生成 dataview 的数据
或者,这些信息放在 frontmatter,如:
那我们查询的话,
```dataview
LIST "<br>**电影名**:" + Movie + "<br>**简介**:" + Brief + "<br>**评分**:" + Score + "<br>**年份**:" + Year + "<br>**类型**:" + Type + " " + Location
FROM #entertain/movie
WHERE contains(file.folder, "record_2023")
SORT Date desc
```
那么,我们就可以生成这样的一个页面:
2、 页面和字段
dataview的核心数据抽象是页面(page) ,指在你的库中包含字段(field) 的markdwon页面。字段 是一段任意命名的数据 ——文本,日期,时间段,链接。 这些可被dataview理解,展示,筛选。字段可以通过三种方式定义:
-
扉页(Frontmatter): 所有的YAML 扉页内容都将自动的转换成dataview字段。
--- tags: daily_node study/obsidian entertain/movie aliases: describe: Obsidian 中 DataView 的使用 Date: 2023-01-20 Time: 09:26:28 Author: Steve Anthony Email: 3500515050@qq.com ---
-
内联字段(inline field): 一行格式为
<Name>:: <Value>
的内容将自动的被dataview解析为一个字段,请注意,你可以对<Name>
使用标准的Markdown格式,但以后将不再支持。Movie:: [猎屠](https://v.qq.com/x/cover/mzc00200e7w52db/b0044upikcw.html) Brief:: 影片讲述某地发生电信诈骗事件,一名警员潜伏到中缅边境,深入电信诈骗中心,与诈骗犯罪集团斗智斗勇的故事,是一部反电信诈骗题材的院线片。 Score:: 7.6 Year:: 2022 Type:: 犯罪 动作 剧情 Location:: 内地
-
隐含字段(implicit): dataview自带大量的元数据对页面进行注释,如文件的创建日期、任何相关的日期、文件中的链接、标签等。
如果文件的标题内有一个日期(格式为yyyy-mm-dd或yyyymmdd),或者有一个Date字段/inline字段,它也有以下属性:
file.day
: 一个该文件的隐含日期。
字段类型:
dataview支持数种不同的字段类型:
- 文本(Text): 全局默认为文本。如果一个字段不匹配其它具体的类型,默认为一段纯文本。
- 数字(Number): 数字类似于’6’ 和 ‘3.6’。
- 布尔值(Boolean): true/false, 就像编程中的概念。
- 日期(Date): ISO8601 标准定义的通用日期格式
YYYY-MM[-DDTHH:mm:ss]
. 月份后面的内容都是可选的。 - 时间段(Duration): 时间段的格式为
<time> <unit>
, 就像