通过构建学习:SurrealDB University 最新教程
发布: (2026年1月12日 GMT+8 17:01)
4 min read
原文: Dev.to
Source: Dev.to
介绍
今天我们很高兴宣布 SurrealDB University 的新内容——这是学习 SurrealDB 及其查询语言的最佳场所。这个新教程使通过大学学习 SurrealDB 的方式增至四种。
现有课程
SurrealDB University 最初提供了两门课程:
- SurrealDB Fundamentals – 基于视频的课程,最短可在三小时内完成。
- Aeon’s Surreal Renaissance – 通过故事教授 SurrealDB 的书籍,需要几天时间来阅读。
随后我们又加入了第三项:
- Tour of SurrealDB – 简明的导览,最短可在 30 分钟内完成。
这些课程满足了三类学习者的需求,但仍有第四类未被满足:通过动手构建学习、并希望在教程结束时拥有可运行项目的学习者。
为什么要新增教程?
Aeon’s Surreal Renaissance 的最后四章已经引导学习者构建一个使用松散结构 JSON 数据的电影数据库项目。然而,直接把用户引导到这些章节会出现两个问题:
- 节奏 – 教程从书的结尾开始,假设已有前置知识。新用户会遇到快速连贯的主题,且几乎没有新内容。
- 剧透 – 这些章节是故事的结局,提前呈现会破坏叙事体验。
因此,我们将这些内容重新编写为一个独立的教程。
学习路径概览
在本新教程中,你将:
- 插入松散类型的 JSON 数据。
- 学习 SurrealQL 类型,了解原始数据将被转换为何种类型以及其优势。
- 定义函数 以执行转换。
- 定义数据库参数,用于电影类型和评分。
- 插入已转换的电影数据。
- 添加模式(schema)。
- 定义索引,其中包括两个全文搜索索引。
- 添加演员、编剧和导演,并通过图边将它们关联到电影。
- 定义具有不同角色的数据库系统用户。
- 创建访问方法,使非系统用户在严格权限下与数据库交互。
- 从每种用户类型的视角测试数据库,使用 Surrealist 和终端中的
curl请求。
该教程约 12 000 字——可以在专注的下午完成,或在两天内以更轻松的节奏完成。
扩展项目
数据库启动并运行后,你可以继续在其上构建。例如:
- 添加一个 UI,利用全文索引中的
edgengram过滤器,在用户输入时显示电影标题和情节(例如,在输入 “ter” 后显示 “Terminator 2” 的结果)。 - 集成一个使用电影数据库并展示海报的 Rust 前端,利用包含图片 URL 的
Poster字段。
如果你基于本教程创建了扩展或示例,欢迎提交 Pull Request 将其加入 examples 文件夹。这是展示已完成教程并演示如何将 SurrealDB 作为你喜爱编程语言后端的绝佳方式。