Saya tahu saya bisa memperbarui (atau menetapkan nilai untuk) bidang referensi entitas di Drupal 7 dengan kode yang mirip dengan berikut ini.
$node['field_code_used_by'][LANGUAGE_NONE][0]['target_id'] = $id;
Saya ingin secara terprogram menetapkan nilai untuk bidang referensi entitas pengguna saya di Drupal 8.
Saya mencoba $node->field_code_used_by->setValue(1);
dan $node->field_code_used_by->entity->value = 1;
tetapi tidak satu pun dari mereka bekerja.
Bagaimana cara menetapkan nilai untuk bidang referensi entitas?
Seperti di D7, properti utama dari bidang referensi di D8 adalah
target id
:The
entity
properti adalah nilai yang dihitung. Jika Anda meletakkan objek dalam nilai ini, drupal akan mengubahnya kembali ke id sebelum menyimpannya ke database.Bidang multinilai
Tambahkan item ke bidang multinilai:
Properti
target_id
tidak perlu, karena itu adalah properti utama dan digunakan secara default. Jadi untuk sebagian besar bidang, Anda dapat menambahkan nilai seperti dalam array php sederhana, yang mudah diingat:sumber