文档

页面摘要: 文档是一个仅存在于 API 层面的概念,表示单个内容类型条目(entry)的所有内容变体(本地化、草稿/发布版本)。使用 Document Service API 在后端操作文档。

Strapi 5 中的 文档(document)是一个仅存在于 API 层面的概念。一个文档代表某个内容类型给定条目的所有不同内容变体。

单一类型包含一个唯一的文档,而集合类型可以包含多个文档。

当你使用管理面板时,永远不会提及文档这一概念,终端用户也无需了解它。用户在 内容管理器 中创建和编辑 条目(entries)。例如,作为用户,你可以列出某个本地化下的条目,或编辑某个本地化下特定条目的草稿版本。

然而,在 API 层面,一个条目的字段值实际上可能具有:

  • 英文和法文本地化下的不同内容,
  • 甚至每个本地化下草稿版本与发布版本的不同内容。

包含某个条目在所有本地化下所有草稿与发布版本内容的这个「容器」就是一个文档。

使用 Document Service API 操作文档,可以帮助你创建、检索、更新和删除文档,或它们所包含的特定数据子集。

以下示意图展示了根据内容类型启用的不同功能(如 国际化(i18n) 和 草稿与发布)所产生的所有可能内容变体:

未启用 i18n 与草稿和发布

文档示意图(无草稿和发布,无 i18n)

仅启用草稿和发布

文档示意图(仅草稿和发布,无 i18n)

仅启用 i18n

文档示意图(仅草稿和发布,无 i18n)

i18n + 草稿和发布(默认)

文档示意图(仅草稿和发布,无 i18n)

  • 如果内容类型启用了国际化(i18n)功能,一个文档可以拥有多个 文档本地化(document locales)。
  • 如果内容类型启用了草稿与发布功能,一个文档可以拥有 已发布 和 草稿 两个版本。
用于查询文档数据的 API

要与文档或它们所代表的数据交互:

  • 从后端服务器(例如从控制器、服务和插件的后端部分),使用 Document Service API。
  • 从应用程序的前端部分,使用 REST API 或 GraphQL API 查询你的数据。

有关 API 的更多信息,请参阅 Content API 简介。

返回结果中的默认版本

后端 API 与前端 API 之间的一个重要区别在于:当未传入任何参数时返回的默认版本不同:

  • Document Service API 默认返回草稿版本,
  • 而 REST 和 GraphQL API 默认返回已发布版本。