Я знаю, что могу обновить (или установить значение) поле ссылки на сущность в Drupal 7 с помощью кода, подобного следующему.
$node['field_code_used_by'][LANGUAGE_NONE][0]['target_id'] = $id;
Я хочу программно установить значение для моего поля ссылки на сущность пользователя в Drupal 8.
Я попытался с $node->field_code_used_by->setValue(1);
и , $node->field_code_used_by->entity->value = 1;
но ни один из них не работал.
Как я могу установить значение для поля ссылки на сущность?
Как и в D7 основное свойство опорного поля в D8 до сих пор
target id
:entity
Свойство представляет собой вычисленное значение. Если вы поместите объект в это значение, drupal преобразует его обратно в id перед сохранением в базу данных.Многозначные поля
Добавьте элемент в многозначное поле:
Это свойство
target_id
не является обязательным, поскольку оно является основным и используется по умолчанию. Таким образом, для большинства полей вы можете добавить значение, как в простом массиве php, которое легко запомнить:источник