OOP真的有帮助吗?

时间:2017-03-11 22:37:44

标签: oop drupal-8

我正在尝试在Drupal 8中创建一个简单的模块,看起来在Drupal 7中真正容易的是现在令人难以置信的复杂。它可以在StackOverflow和Google的帮助下完成,但是,例如:

从节点获取字段值,如下所示:

'name' => $node->get('title')->getValue(),
'body' => $node->get('body')->getValue(),
'image' => file_create_url($node->field_fotografia->entity->getFileUri()),

为什么获取图像字段的方式与标题和正文不同?我如何知道使用何种方式以及如果其他类型的领域有其他方式,我将来如何知道?

1 个答案:

答案 0 :(得分:0)

逻辑非常简单

$node->get('body')->getValue();

表示:获取字段“body”的属性值

等同于D7

$node['body'][$language][$index]['value];

直线前进

现在是另一个例子

$node->field_fotografia->entity->getFileUri()

表示:获取存储在字段“field_fotografia”中的实体的属性uri,因为该图像不是属性值而是单独的实体;我相信$ node-> get('field_fotografia') - > getValue()会返回有意义的图片ID。相同模型适用于所有实体引用(多字段,段落,其他节点等)。