Le 14 septembre 2017, nous avons publié une version actualisée de notre Politique de confidentialité. En utilisant video2brain.com vous vous engagez à respecter ces documents mis à jour. Veuillez donc prendre quelques minutes pour les consulter.

Créer un module avec Drupal 8

Utiliser les requêtes directes

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
La manière la plus directe de récupérer du contenu en base de données est de créer une requête directe. Vous allez découvrir la légère couche d'abstraction fournie par Drupal.
03:50

Transcription

Dans certains cas, charger un nœud complet pour récupérer une simple information ou charger toute une liste de nœud pour récupérer uniquement quelques informations peut s'avérer lourd et inutile. Drupal nous laisse alors la possibilité d'accéder directement à la base de données en passant toujours par une petite couche d'abstractions. Mais il est possible d'effectuer des requêtes directes en base. Ici on veut par exemple accéder directement à une information, donc on va vouloir par exemple accéder directement au champ alternatif de l'image plutôt que de charger le nœud, de récupérer l'image et ensuite de charger l'image. Donc là on va directement accéder au champ alternatif. Donc pour ce faire, on va commencer par composer une requête classique, donc on fait un « SELECT » de « field_image_alt », donc ce qu'on a pu retrouver ici, dans notre base... ... de la table, donc « node_field... » Alors, on nous le propose ici : « node_field_image WHERE entity_id = ...» Donc là on va récupérer cette valeur, donc « ... entity_id = 5 ». Donc on va récupérer directement la valeur « montre poignet ». Ok. Donc voilà, une fois qu'on a notre requête, on peut l'exécuter pour voir que tout est ok, on récupère bien la valeur, donc on « copie-colle » la requête quelque part dans notre code. Donc ici on va le mettre à cet endroit. On va directement envoyer le résultat de la requête dans la variable « result » et pour exécuter une requête dans une base Drupal on fait tout simplement « db_query » qui prend comme premier paramètre la requête. Il y a juste une légère couche d'abstraction au niveau de Drupal : c'est que toutes les tables qui composent la requête sont entourées d'accolades et également pour éviter les failles d'injection SQL, on va utiliser des « place holders ». Ici par exemple on va taper « = : nid » et ce « place holder », on va le passer en paramètres. Donc là on va filtrer ce qui est passé en paramètres hein. On va créer un tableau avec comme clé nos différents « place holders », donc si on en a plusieurs, on en place plusieurs et comme valeur, notre valeur de « 5 » Donc là on a créé notre requête, ensuite on va boucler dessus, donc sur le résultat : « as $record » comme enregistrement. On va afficher. Donc on va rajouter, en fait, à l'affichage hein. Donc là on prend notre enregistrement et on va simplement récupérer ici notre champ. Si on a plusieurs champs, on y accède de cette manière là hein. Par exemple, on a « title ». On peut aussi récupérer la valeur du titre sans aucun souci. Voilà. Donc ici on a bien notre requête, on l'exécute, on récupère le résultat et on l'affiche. Voyons ce que ça donne en « front ». Ok : « Texte alternatif : Montre poignet », donc on a bien réussi d'une façon plus directe d'accéder à la base de données.

Créer un module avec Drupal 8

Étendez les possibilités de Drupal en créant votre propre module. Modifiez le fonctionnement natif du CMS grâce aux hooks, créez une entrée de menu, un bloc système, etc.

1h14 (24 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :27 avr. 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !