strapi 内容类型和组件有什么区别?

问题描述 投票:0回答:4

我是 strapi 的新用户。在阅读文档时,我对内容类型和组件感到困惑。这两者有什么区别?

javascript mean-stack strapi
4个回答
13
投票

A Content Type 是一种数据结构,用作特定内容的集合。

可以是文章、餐厅、产品等...

A Component 是一种数据结构(也是),可以在许多不同的 Content Type 中使用和重复使用。

例如,如果您的应用程序中有文章和产品内容类型,并且您想为这两种内容类型 管理 SEO 标签,您将创建一个 SEO 组件 并在您的文章和产品内容类型中使用它

您不必在两个内容类型中创建相同的 SEO 数据结构


8
投票

或者你可以说一个内容类型是一个模型,一个组件是一个或多个模型的自定义/复合字段

内容类型的示例可以是:

  • 餐厅
  • 文章
  • 产品

组件示例可以是:

  • 营业时间(例如餐厅)
  • 元标签(例如文章或产品)

0
投票

在我的理解中,components 结合 dynamic-zone 是 Strapi 中的多对多解决方案。

换句话说,在给定的集合中,当您不仅要定义与 1 个“模型”而且要定义与多个“模型”的关系时,您可以将这些模型中的每一个都作为一个组件。最后,在给定的集合中,添加一个列出这些组件的动态区域。

动态区域充当多对任何关系。

注意:因此,一旦您需要一个集合出现在多对任何关系(动态区域)=> 使该集合成为一个组件


总结一下:我会说一个组件有点像一个集合,但这是动态区域/多对任何关系所必需的


0
投票

Strapi 中的内容类型表示可以使用 CMS 添加、更改或控制的特定类别的内容。内容类型指定字段、关系、验证和权限以及内容的结构和其他特征。

相反,Strapi 组件是一个模块化构建块,可用于增强内容类型的特性或功能。可以与各种内容类型一起使用的字段和关系可以包含在一个组件中。可以根据需要独立于内容类型生成、管理组件并将其添加到一种或多种内容类型。

查看博客示例,以更好地理解内容类型和组件之间的区别。博客帖子的内容类型可能包含帖子标题、作者、正文和发布日期字段。姓名、个人简介和个人资料图像字段是博客作者的内容类型示例。这两种内容类型是不同的,并且彼此分开。

但是,您也可能希望同时为博客文章和作者内容类型提供特色图片。在这种情况下,您可以制作一个特色图片组件,其中包含图像、标题和替代文本字段。然后可以将该组件添加到作者和博客文章内容类型。

总之,内容类型指定特定类型材料的组织和特征,而组件提供可应用于其他内容类型的模块化功能。

© www.soinside.com 2019 - 2024. All rights reserved.