Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Drupalcamp Nantes - Présentation entités

947 views

Published on

Présentation de Greg Beuthin (http://twitter.com/#!/localized_fr)

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Drupalcamp Nantes - Présentation entités

  1. 1. Entities – c’est quoi cebordel?<br />
  2. 2. Qui suis-je?<br />Mytailorisrich, <br />but my French is not as rich.<br />Hashtag #gregsays<br />IANAD – I am not a developer<br />Je voulais comprendre, donc j’avais demandé à m’expliquer.<br />Et maintenant j’essaie d’expliquer.<br />
  3. 3. Pour faire bref<br />Drupal6 : Noeuds et CCK<br />Drupal7 : Entités et Champs<br />
  4. 4. Euh…<br />Non, pas vraiment…<br />
  5. 5. La pre-histoire (Drupal 6)<br />Nodes<br />Customiser/ étendre avec CCK<br />IntegreravecViews<br />
  6. 6. MAIS…<br />Problème pour type de contenu autre que Nodes :<br />User<br />Comments<br />TaxonomyTerms<br />Autres types de contenus (images, pièces jointes, URLs)<br />
  7. 7. MAIS… (2)<br />Galère pour intégration dans CCK et Views (entre autre) - ils doivent être transformés en Node :<br />soit par un modules contrib<br />soit par des développements customisés.<br />
  8. 8. DRUPAL 7 <br />Le Next Generation<br />
  9. 9. Fields & Entities<br />Deux grands nouveautés<br />Ajout d’une couche supérieure au « Node », « Commentaire », etc (Entity)<br />Intégration du concept CCK (Fields) dans Core<br />
  10. 10. Entité<br />Un élément particulier de contenu <br />Tout les éléments de contenus sont maintenant des Entités<br />User, Node, Commentaire, etc.<br />
  11. 11. Entité = contenustandardisé<br />Gestion normalisée<br />Fonctions standards de manipulation<br />Simplification des références entre contenus<br />
  12. 12. Entity Types<br />Le type d’information que l’on manipule<br />Plusieurs type d'entités :<br />Nodes<br />Comments<br />User<br />Files<br />Vocabulary<br />Term<br />(Type d'Entités par défaut en D7)<br />
  13. 13. Fields<br />bah, c'est un champ….<br />qui peut être ajouté à un Entité<br />Comme dans CCK, les Champs peuvent être utilisé sur plusieurs Bundles<br />Champ « Image » <br />-> Node « Article » <br />-> Node « Gallery »<br />
  14. 14. Bundles<br />Bundle = un Sous-Type d’Entité personnalisé<br />Type d'entité = « Node »<br />Bundle =«  Article », « Blog »<br />En effet Node avec quelques champs extra (image, URL, etc…)<br />
  15. 15. HEIN?<br />« Rien compris… »<br />
  16. 16. On reprend?<br />Attention : Discours un peu plus technique<br />
  17. 17. Definition d’uneEntité<br />Propriétés de l'entité (la partie "business")<br />Versioné ou pas<br />Fieldable ou pas<br />Définition de table dans base de données<br />Comment sont mappés les concepts / champs<br />
  18. 18. Definition des tables BDD<br />Exemple Node: <br />nodeID (1,2,3)<br />titre actuel <br />(précédents -> node révisions)<br />date de création + date de révision<br />auteur<br />types (bundles disponibles)<br />
  19. 19. Mapping de concepts<br />Les concepts: <br />l'entitéID<br />revisionID<br />bundle<br />Le mapping : comment s’appelle ces champs pour les differents Entités?<br />
  20. 20. Mapping Entité -> Node<br />entitéID -> nid<br />revisionID-> vid<br />bundle-> type <br />(qui va stockés plusieurs "types" de Nodes)<br />
  21. 21. Mapping Entité -> User<br />entitéID -> uid<br />revisionID-> 0 (pas de versioning)<br />bundle-> 0 <br />(qui veux dire qu'il y aura qu'un bundle par défaut)<br />
  22. 22. Mapping Entité -> Terme<br />entitéID -> tid<br />revisionID->0 (pas de versioning)<br />bundle-> vid(vocabularies du terme)<br />
  23. 23. Alors.. Bundle encore unefois?<br />« Vaux mieux…. »<br />
  24. 24. Bundles<br />Bundle = un Type d’Entité personnalisé<br />Un entité avec plusieurs champs, qui est définit comme un type de contenu<br />Type d'entité = “Terme”<br />> “Bundle” = Tags<br />Alors, par exemple, le vocabulaire “Tags” ont le champs “Images” ajouté<br />
  25. 25. Bundles (2)<br />User, Vocabulaire, File - pas de type d’Entités<br />Bundle = Entity par défaut<br />Entity : User -> Bundle : User<br />Il sont toujours personnalisables (ajout de champs)<br />
  26. 26. Entités / Bundles par défaut<br />Entité Bundle<br />Node Story, Page, Blog, ….<br />Comment Story, Page, Blog, ….<br />User 0 (User par défaut)<br />Vocabulaire 0 (Vocab par défaut)<br />Terme [les vocabulaires]<br />File 0 (File par défaut)<br />
  27. 27. Exemple Entity : NODE<br />Definition<br /><ul><li>Versioné / pas
  28. 28. Fieldable / pas
  29. 29. Définition BDD
  30. 30. Mapping</li></ul>Tables BDD<br />nodeID(1,2,3)<br />titre actuel <br />(précédents -> node révisions)<br />date de création + date de révision<br />auteur<br />types (bundles disponibles)<br />
  31. 31. Exempe Entity : NODE<br />« Node »<br />Corps de Text<br />Image<br />Ville<br />Ne<br />« News »<br />« BUNDLE »<br />
  32. 32. Exempe Entity : TERM<br />« Term »<br />Drapeau<br />« Langue »<br />« BUNDLE »<br />Les Bundles des Termes sont forcement les Vocabulaires<br />
  33. 33. Foire au Questions Bordel<br />Bon, c’estclair?<br />
  34. 34. MERCI<br />Laurent Ajdnik- DrupalLyon<br />Damien Tournoud - Commerce Guys<br />Ronald Ashri - Istos.it<br />
  35. 35. Ah, oui – aussi<br />
  36. 36. Et merci….<br />…..EPITECH<br />….et ARTUSAMAK!!!!<br />

×