Drupal 8中的内容类型是否与数据库中的表相同?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Drupal 8中的内容类型是否与数据库中的表相同?相关的知识,希望对你有一定的参考价值。

如果我正在创建一个数据库,并且我有两个具有多对多关系的表,我将创建第三个表来表示该关系。

但是,如果我创建三种内容类型,我应该如何在Drupal 8中实现上述数据模型?所以我的问题是,Drupal 8中的内容类型与数据库中的表相同,还是应该以不同方式使用的其他内容?

答案

要将数据存储在Drupal 8中的自定义表中,您将需要定义自定义模式并通过钩子公开它。这是Acquia's documentation这个过程。这与创建内容类型不同。

内容类型数据存储在由其他内容类型(例如nodenode_revision)共享的多个表中,并且操作这些表并不容易。

添加内容类型的最快方法是使用Drupal 8用户指南第6章中Adding a Content Type中推荐的方法。这允许用于操纵数据结构的所有标准GUI方法。

另一答案

正如Isaiah所说,Drupal中的内容类型在技术上与数据库中的表不同,因为它们使用了许多表。但!

在您的情况下,如果您有类似表A的内容:

- name
- email
- phone
- id

第二张桌子,表格B:

- company
- something else
- etc…
- id

并正在寻找可能类似的第三个:

- id
- table A id
- table B id

然后答案是肯定的。

在这种情况下,您将拥有内容类型A,其中包含名称,电子邮件,电话的字段,然后是指向具有公司字段的内容类型B的实体引用字段。

您可以使用实体引用字段在任何方向上引用。

您可能还会发现“Is there a way to input the data of multiple content types”很有帮助。

以上是关于Drupal 8中的内容类型是否与数据库中的表相同?的主要内容,如果未能解决你的问题,请参考以下文章

标签部分在 Drupal 8.1.1 中的不同内容类型中具有不同的视图

在 drupal 8 的另一个自定义内容类型字段中使用自定义内容类型作为字段

Drupal 8 /预处理功能中的视图

如何防止文章标题成为 Drupal 8 中的链接

drupal 7中的上下文过滤器视图

内容类型列表中的 Drupal 更改行权重