我每天都试图将数据导入到Drupal 8中,并且在我需要更新图像的位置被阻止。所以我有一个包含无限图像的图像字段。
首次导入图像时,我创建它们并将它们添加到节点field_images字段中。添加工作正在进行中。
$entity = Node::create(
[...,
field_images => [$file1],
...
]);
当有节点更新时,我需要替换此节点的每个更改值。这段代码完美无缺
$node = Node::load(1);
$node->set('field_images',[$file2]);
$node->save();
现在,当我启用翻译时,这不起作用,因为它只编辑默认值。 重新加载此更新节点时,请参阅此调试器映像:
我怎样才能更新所有翻译?
答案 0 :(得分:1)
你需要做这样的事情:
'field_image' =>
[
'target_id' => $values['image'][0],
'alt' => $values['title'],
],
答案 1 :(得分:0)
尝试一下
$node->field_images->de->target_id = $file->id();