
L'API de la base de données lance des exceptions en cas d'erreur, qui peuvent être interceptées en encapsulant les opérations de base de données dans des blocs try {} catch() {}, comme illustré dans cet exemple :


Le niveau base de données de Drupal ne fournit pas d'abstraction SQL multi-bases de données. Pour assurer la portabilité entre les moteurs de base de données pris en charge, votre code doit utiliser uniquement les fonctions reconnues comme faisant partie de la norme ANSI et supportées par toutes les bases de données supportées par Drupal. La liste suivante est encore incomplète. La forme utilisée ici est recommandée, car d'autres syntaxes peuvent ne pas fonctionner sur toutes les bases de données.


Le système d’entités de Drupal 8
Les entités sont des classes typées avec des méthodes :
Méthodes génériques | $entity->id() |


- Drupal 7 - les entités étaient des objets génériques stdClass.
- Drupal 8 - les entités sont désormais des objets typés spécifiques, chaque type d'entité définissant la classe utilisée pour les instances de cette entité.
Exigences
Les classes d'entités doivent être placées dans l'espace de noms Entity du module qui fournit le type d'entité, par exemple \Drupal\[nom_module]\Entity. Cela signifie que les fichiers PHP de classe d'entité se trouvent dans le dossier src/Entity du module.


Couvre les méthodes API des objets généraux
- Entity::create()
- Entity::load()
- Entity::save()
- Entity::id()
- Entity::bundle()
- Entity::isNew()
- Entity::label()
Des API plus spécifiques seront abordées dans des chapitres dédiés.


Dans Drupal 8, les bundles sont un type de conteneur d’informations qui contiennent des définitions ou des réglages de champs. Ils sont parfois appelés « sous-types ». Les bundles sont optionnels et se situent sous les types d’entités dans la hiérarchie des conteneurs d’informations.


Les objets de configuration utilisent l’API Entity pour sauvegarder la configuration dans la base de données.


Cette fiche de référence contient un aperçu des méthodes, classes et interfaces fréquemment utilisées pour les objets de contenu.


Audience cible
Cette documentation s’adresse principalement aux développeurs ayant une expérience en programmation orientée objet en PHP, Drupal 6 ou Drupal 7, ainsi qu’à ceux qui souhaitent apprendre les principes de Drupal 8.
La documentation sur la création d’un type d’entité de contenu dans Drupal 8 inclut une liste complète des options disponibles.
Création d’un type de contenu sans bundle dans Drupal 8.
Dans ce cas, nous créons un objet contenu Drupal 8 qui n’a aucun bundle.


Cette page est une copie de la configuration « Enabled by Default » dans un module Drupal 8. Elle doit être considérée comme une référence amortie.
La création d’un type de contenu personnalisé est devenue assez simple grâce à la nouvelle API de configuration introduite avec Drupal 8.
