web-dev-qa-db-fra.com

Vérifier qu'un nœud avec un ID de nœud donné existe

J'ai créé un module qui reçoit l'ID de nœud du formulaire. Lors de la validation du formulaire, il doit vérifier qu'un nœud avec cet ID de nœud existe.

Comment puis-je le vérifier?

11
Thew

Vous pouvez passer le nid à \ Drupal\node\Entity\Node :: load () . Il retournera un objet s'il existe, NULL s'il ne l'est pas.

8
Neograph734

Si vous ne voulez pas charger le nœud entier, vous pouvez utiliser la requête d'entité:

$values = \Drupal::entityQuery('node')->condition('nid', $id)->execute();
$node_exists = !empty($values);

Ce sera beaucoup plus efficace car il ne demande que les identifiants et pas tous les champs de noeud.

15
Eyal