Bir düğüm güncellendiğinde bir düğüm alanının değerini güncellemek istiyorum.
Burada belirtilen kodu kullanarak denedim Drupal 8 düğümünü programlama yoluyla güncelleme
use Drupal\node\Entity\Node;
function hello_world_entity_presave(Drupal\Core\Entity\EntityInterface $entity) {
$check = \Drupal::routeMatch()->getParameter('node');
if ($check) {
$node = Node::load($check->nid->value);
$node->title->value = 'testing'; //set value for field
$node->save();
}
}
Ama çalışmadı. Düğümü kaydettikten sonra 500 hatası alıyorum. Ayrıca if ifadesini alıp bir düğüm kimliği belirtmeyi denedim$node = Node::load(1);
Ben de Drupal 8 programsal olarak bir düğüm / Varlık Güncelleştirmeyi kullanmayı denedim
use Drupal\node\Entity\Node;
function hello_world_node_update(Drupal\node\NodeInterface $node) {
$node = Node::load(1);
$node->set("title", 'New value'); // also tried $node->setTitle('The new Title');
$node->save();
}
ama şans da yok.
Buna ek olarak, farklı kanca varlık_presave, entity_update, node_update kullanmayı denedim, ancak herhangi bir fark yaratmadı.