SlideShare une entreprise Scribd logo
1  sur  62
Télécharger pour lire hors ligne
Réunion TUG
               Lausanne




                             Présentation de Xavier Perseguers
Monday, September 21, 2009
Agenda
                     Présentation du mini-projet

                     Modèle de données métier                          Extbase

                     Persistence des données                           Extbase

                     Affichage et modification des informations   Fluid + Extbase

                     Idées d’amélioration




Monday, September 21, 2009
Présentation du
                               mini-projet




Monday, September 21, 2009
Présentation du mini-projet


               Cahier des charges
                     Base de données de films

                     Liste de films (titre, réalisateur, genre)

                     Ajout de nouveaux films

                     Modification des données existantes




Monday, September 21, 2009
Modèle de données
                                  métier




Monday, September 21, 2009
Modèle de données métier


               Qu’est-ce qu’un film ?




Monday, September 21, 2009
Modèle de données métier


               Qu’est-ce qu’un film ?
                                          Titre
              Date de sortie


  Acteurs                                 Un film?




             Réalisateur                            Genre
                                 Phrase marquante

Monday, September 21, 2009
Modèle de données métier


               Base de données
                     On l’oublie !

                     Elle ne sert “à rien”

                     On se concentre sur le métier !




                                     N’essaie pas de tordre la cuillère, car c’est impossible.
                                     Tu dois essayer de te concentrer pour faire éclater la vérité : la cuillère n’existe pas !
                                                                                                                         Matrix




Monday, September 21, 2009
Modèle de données métier


               Attribut / Entité
                     Attribut : Informations sur un objet
                     nom, téléphone, âge, ...



                     Entité : qui a une identité, qui a des méthodes
                     Exemple : compte bancaire, personne



                     Dépendant du métier



Monday, September 21, 2009
Modèle de données métier


               Entité, Attribut, ...
                     Film : Entité / Agrégat racine (Aggregate Root)
                             Réalisateur : relation 1:n vers une “Personne”
                             Genre : relation 1:n vers un “Genre”
                             Acteurs : relation m:n vers des “Personne”s

                     Personne : Entité (Entity)
                             Nom, Prénom, ...

                     Genre : Object valeur (Value Object)




Monday, September 21, 2009
Modèle de données métier




Monday, September 21, 2009
Modèle de données métier




                              22.09.2009 - Génération du code
                             du modèle de données uniquement !




Monday, September 21, 2009
Modèle de données métier


               Création de l’extension




Monday, September 21, 2009
Modèle de données métier


               Création de l’extension




Monday, September 21, 2009
Modèle de données métier


               Création de l’extension




Monday, September 21, 2009
Modèle de données métier


               Création des objets
                     Classes/Domain/Model/Genre.php :




Monday, September 21, 2009
Modèle de données métier


               Création des objets
                     Classes/Domain/Model/Movie.php :




Monday, September 21, 2009
Modèle de données métier


               Création des objets
                     Classes/Domain/Model/Movie.php :

            Compléter
           avec tous les
             attributs
                                                        Classe à créer
                                                        selon le même
                                                           principe




Monday, September 21, 2009
Modèle de données métier


               Dépôt d’objets (repository)
                     Point d’entrée pour accéder aux entités = Guichet

                     Méthode add(), remove(), replace(), update()

                     Méthodes findAll(),
                     findBy*()




Monday, September 21, 2009
Modèle de données métier


               Création des dépôts d’objets
                     Classes/Domain/Repository/MovieRepository.php :




                     Classes/Domain/Repository/PersonRepository.php :




Monday, September 21, 2009
Persistence des
                                données




Monday, September 21, 2009
Persistence des données




                                         Nom “compatible”
                                           avec Extbase




Monday, September 21, 2009
Persistence des données




Monday, September 21, 2009
Persistence des données


               Création des champs
                     Répéter l’opération pour les tables :

                             tx_movies_domain_model_person

                             tx_movies_domain_model_movie



                                                             Relation vers une
                                                               autre entité




Monday, September 21, 2009
Persistence des données


               Création des champs
                     Bon à savoir :

                             Colonne “director” ↔ Attribut “Director”

                             Colonne “firstname” ↔ Attribut “Firstname”

                             Colonne “release_date” ↔ Attribut “ReleaseDate”




Monday, September 21, 2009
Persistence des données


               Réorganisation pour Extbase




Monday, September 21, 2009
Persistence des données


               Mise à jour des références
                      Fichier ext_tables.php (pour toutes les tables) :




Monday, September 21, 2009
Persistence des données


               Mise à jour des références
                      Fichier ext_tables.php (pour toutes les tables) :




Monday, September 21, 2009
Persistence des données


               Mise à jour des références
                      Fichier Configuration/TCA/tca.php :




Monday, September 21, 2009
Persistence des données


               Mise à jour des références
                      Fichier Configuration/TCA/tca.php :




Monday, September 21, 2009
Persistence des données


               Relation Modèle ↔ Tables




Monday, September 21, 2009
Persistence des données


               Relation Modèle ↔ Tables




                                            Pour toutes les
                                         relations uniquement




Monday, September 21, 2009
Démonstration
                   (films dans le backend)




Monday, September 21, 2009
Affichage / Modification
                     des données




Monday, September 21, 2009
Affichage des données


               Fonctionnement
                     Création d’un plugin qui affiche les films

                     Le plugin contient une action (p. ex. “index”)

                     L’action prépare les données et les transmet à Fluid

                     Fluid utilise un gabarit pour afficher les informations




Monday, September 21, 2009
Affichage des données


               Création d’un plugin
                     Informer TYPO3 de la présence de notre plugin :




                     Fichier ext_tables.php :



                                 Avec un texte traduisible, p. ex. :
                                 LLL:EXT:movies/Resources/Private/Language/locallang_db.xml:plugin.pi1




Monday, September 21, 2009
Affichage des données


               Création d’un plugin
                     Contrôleur Classes/Controller/MovieController.php




                                                                    C’est tout !




Monday, September 21, 2009
Affichage des données


               Création d’un plugin
                     Gabarit Resources/Private/Templates/Movie/index.html
                                          Nom du contrôleur   Action   Format de rendu
                                                                       (html par défaut)




Monday, September 21, 2009
Affichage des données


               Création d’un plugin
                     Gabarit Resources/Private/Templates/Movie/index.html



                                                       Tx_Movies_Domain_Model_Movie




Monday, September 21, 2009
Affichage des données


               Création d’un plugin
                     Associer le code à exécuter pour afficher notre plugin

                     Fichier ext_localconf.php :




Monday, September 21, 2009
Affichage des données


               Création d’un plugin
                     Associer le code à exécuter pour afficher notre plugin

                     Fichier ext_localconf.php :




           Attention : nom de plugin identique à celui du fichier ext_tables.php




Monday, September 21, 2009
Démonstration
                             (ajout du plugin)




Monday, September 21, 2009
Modification des données


               Ajouter un film
                     Créer l’action “new” qui est présente dans le gabarit :



                             Elle doit afficher un formulaire de saisie qui une fois
                             posté doit ajouter le nouveau film au dépôt




Monday, September 21, 2009
Modification des données


               Ajouter un film
                     Gabarit Resources/Private/Templates/Movie/new.html :
                                          Nom du contrôleur   Action   Format de rendu
                                                                       (html par défaut)




Monday, September 21, 2009
Modification des données


               Ajouter un film
                     Gabarit Resources/Private/Templates/Movie/new.html :




Monday, September 21, 2009
Modification des données


               Ajouter un film
                     Actions “new” et “create” :




Monday, September 21, 2009
Modification des données


               Ajouter un film
                     Référencer les nouvelles actions dans ext_localconf.php :




Monday, September 21, 2009
Modification des données


               Modifier un film
                     Modifier le gabarit de la liste des films :




                     Enregistrer les 2 nouvelles actions :




Monday, September 21, 2009
Modification des données


               Modifier un film
                     Modifier le gabarit de la liste des films :




                     Enregistrer les 2 nouvelles actions :




Monday, September 21, 2009
Modification des données


               Modifier un film
                     Actions “edit” et “update” :




Monday, September 21, 2009
Modification des données


               Modifier un film
                     Gabarit Resources/Private/Templates/Movie/edit.html :
                                            Nom du contrôleur   Action   Format de rendu
                                                                         (html par défaut)



                                                                          en plus !


                                       valeur actuelle




                                        valeur actuelle




Monday, September 21, 2009
Idées d’amélioration




Monday, September 21, 2009
Idées d’amélioration


               Modèle de données
                     Films :
                             Gestion des acteurs ainsi que leur(s) rôle(s)

                     Personnes :
                             Ajout / Modification




Monday, September 21, 2009
Idées d’amélioration


               Plugins
                     Films :
                             Configuration FlexForm pour choisir un genre (DEMO)
                             Ajout de l’affiche dans le rendu (DEMO)
                             Intégration d’informations supplémentaires extraites de
                             http://www.imdb.com (The Internet Movie Database)

                     Personnes :
                             Ajout / Modification

                     Utilisation de ExtJS pour le rendu (DEMO)



Monday, September 21, 2009
Démonstration




Monday, September 21, 2009
Conclusion


               Résumé
                     Extbase = Modèle et Contrôleur de MVC

                     Fluid = Vue de MVC

                     (mvc_extjs = “colle” entre Extbase, Fluid et ExtJS)




Monday, September 21, 2009
Conclusion


               Résumé
                     Ajouter un élément
                             newAction (affichage du formulaire)
                             createAction (ajout au dépôt)

                     Modifier un élément
                             editAction (affichage du formulaire)
                             updateAction (mise à jour dans le dépôt)




Monday, September 21, 2009
Conclusion


               Résumé
                     Mise en place délicate sans Kickstarter Extbase “complet”

                     Mais ...



                                    Le jeu en vaut la chandelle !




Monday, September 21, 2009
Documentation et Liens
                     Extbase, Fluid et l’extension blog_example
                     http://forge.typo3.org/projects/show/typo3v4-mvc

                     MVC + ExtJS
                     http://forge.typo3.org/projects/show/extension-mvc_extjs

                     Présentation et fichiers
                     http://xavier.perseguers.ch/tutoriels/typo3/developpement/
                     extbase-fluid.html




Monday, September 21, 2009
Merci de votre attention




Monday, September 21, 2009
Merci de votre attention




                             Questions ?




Monday, September 21, 2009
Monday, September 21, 2009

Contenu connexe

En vedette

Migration to IBM SmartCloud Notes
Migration to IBM SmartCloud Notes Migration to IBM SmartCloud Notes
Migration to IBM SmartCloud Notes jackdowning
 
Exchange 2013 Dimensionnement et Performance
Exchange 2013 Dimensionnement et Performance Exchange 2013 Dimensionnement et Performance
Exchange 2013 Dimensionnement et Performance Microsoft Technet France
 
Compare Exchange and Lotus Notes Domino features
Compare Exchange and Lotus Notes Domino featuresCompare Exchange and Lotus Notes Domino features
Compare Exchange and Lotus Notes Domino featuresmaria_francis1983
 
Replacing Lotus Notes? Here's How It Really Goes Down
Replacing Lotus Notes?  Here's How It Really Goes DownReplacing Lotus Notes?  Here's How It Really Goes Down
Replacing Lotus Notes? Here's How It Really Goes DownPeter Presnell
 
Un exemple élémentaire d'application MVC en PHP
Un exemple élémentaire d'application MVC en PHPUn exemple élémentaire d'application MVC en PHP
Un exemple élémentaire d'application MVC en PHPKristen Le Liboux
 
White Paper: Migrating IBM Lotus Notes and Domino to the Cloud: Selecting Mic...
White Paper: Migrating IBM Lotus Notes and Domino to the Cloud: Selecting Mic...White Paper: Migrating IBM Lotus Notes and Domino to the Cloud: Selecting Mic...
White Paper: Migrating IBM Lotus Notes and Domino to the Cloud: Selecting Mic...Office
 
Alphorm.com Support Formation SCOM 2012 R2, les fondamentaux
Alphorm.com Support Formation SCOM 2012 R2, les fondamentauxAlphorm.com Support Formation SCOM 2012 R2, les fondamentaux
Alphorm.com Support Formation SCOM 2012 R2, les fondamentauxAlphorm
 
Alphorm.com Support de la Formation WebDev 21
Alphorm.com Support de la Formation WebDev 21Alphorm.com Support de la Formation WebDev 21
Alphorm.com Support de la Formation WebDev 21Alphorm
 
Alphorm.com Formation Exchange 2016, Configuration Avancée
Alphorm.com Formation Exchange 2016, Configuration AvancéeAlphorm.com Formation Exchange 2016, Configuration Avancée
Alphorm.com Formation Exchange 2016, Configuration AvancéeAlphorm
 
Comment automatiser les commandes PowerShell pour optimiser la performance d'...
Comment automatiser les commandes PowerShell pour optimiser la performance d'...Comment automatiser les commandes PowerShell pour optimiser la performance d'...
Comment automatiser les commandes PowerShell pour optimiser la performance d'...Microsoft Décideurs IT
 
Alphorm.com Formation SCCM 2012 R2
Alphorm.com Formation SCCM 2012 R2Alphorm.com Formation SCCM 2012 R2
Alphorm.com Formation SCCM 2012 R2Alphorm
 
alphorm.com - Formation Exchange Server 2013 (70-341)
alphorm.com - Formation Exchange Server 2013 (70-341)alphorm.com - Formation Exchange Server 2013 (70-341)
alphorm.com - Formation Exchange Server 2013 (70-341)Alphorm
 
Alphorm.com-Formation windows 2012 (70-410)
Alphorm.com-Formation windows 2012 (70-410)Alphorm.com-Formation windows 2012 (70-410)
Alphorm.com-Formation windows 2012 (70-410)Alphorm
 
Gâteau au citron et yaourt. Jesús et Ignacio. 2º D
Gâteau au citron et yaourt.  Jesús et Ignacio. 2º DGâteau au citron et yaourt.  Jesús et Ignacio. 2º D
Gâteau au citron et yaourt. Jesús et Ignacio. 2º Danaisruiz
 
Alerte aux spams et virus.
Alerte aux spams et virus.Alerte aux spams et virus.
Alerte aux spams et virus.anaisruiz
 
Diapo courrier électronique
Diapo courrier électroniqueDiapo courrier électronique
Diapo courrier électroniquejyrtek
 

En vedette (19)

Migration to IBM SmartCloud Notes
Migration to IBM SmartCloud Notes Migration to IBM SmartCloud Notes
Migration to IBM SmartCloud Notes
 
Exchange 2013 Dimensionnement et Performance
Exchange 2013 Dimensionnement et Performance Exchange 2013 Dimensionnement et Performance
Exchange 2013 Dimensionnement et Performance
 
What is SPAM?
What is SPAM?What is SPAM?
What is SPAM?
 
Exchange 2013 Bonnes pratiques
Exchange 2013 Bonnes pratiques Exchange 2013 Bonnes pratiques
Exchange 2013 Bonnes pratiques
 
Compare Exchange and Lotus Notes Domino features
Compare Exchange and Lotus Notes Domino featuresCompare Exchange and Lotus Notes Domino features
Compare Exchange and Lotus Notes Domino features
 
Replacing Lotus Notes? Here's How It Really Goes Down
Replacing Lotus Notes?  Here's How It Really Goes DownReplacing Lotus Notes?  Here's How It Really Goes Down
Replacing Lotus Notes? Here's How It Really Goes Down
 
Un exemple élémentaire d'application MVC en PHP
Un exemple élémentaire d'application MVC en PHPUn exemple élémentaire d'application MVC en PHP
Un exemple élémentaire d'application MVC en PHP
 
White Paper: Migrating IBM Lotus Notes and Domino to the Cloud: Selecting Mic...
White Paper: Migrating IBM Lotus Notes and Domino to the Cloud: Selecting Mic...White Paper: Migrating IBM Lotus Notes and Domino to the Cloud: Selecting Mic...
White Paper: Migrating IBM Lotus Notes and Domino to the Cloud: Selecting Mic...
 
Spam Filtering
Spam FilteringSpam Filtering
Spam Filtering
 
Alphorm.com Support Formation SCOM 2012 R2, les fondamentaux
Alphorm.com Support Formation SCOM 2012 R2, les fondamentauxAlphorm.com Support Formation SCOM 2012 R2, les fondamentaux
Alphorm.com Support Formation SCOM 2012 R2, les fondamentaux
 
Alphorm.com Support de la Formation WebDev 21
Alphorm.com Support de la Formation WebDev 21Alphorm.com Support de la Formation WebDev 21
Alphorm.com Support de la Formation WebDev 21
 
Alphorm.com Formation Exchange 2016, Configuration Avancée
Alphorm.com Formation Exchange 2016, Configuration AvancéeAlphorm.com Formation Exchange 2016, Configuration Avancée
Alphorm.com Formation Exchange 2016, Configuration Avancée
 
Comment automatiser les commandes PowerShell pour optimiser la performance d'...
Comment automatiser les commandes PowerShell pour optimiser la performance d'...Comment automatiser les commandes PowerShell pour optimiser la performance d'...
Comment automatiser les commandes PowerShell pour optimiser la performance d'...
 
Alphorm.com Formation SCCM 2012 R2
Alphorm.com Formation SCCM 2012 R2Alphorm.com Formation SCCM 2012 R2
Alphorm.com Formation SCCM 2012 R2
 
alphorm.com - Formation Exchange Server 2013 (70-341)
alphorm.com - Formation Exchange Server 2013 (70-341)alphorm.com - Formation Exchange Server 2013 (70-341)
alphorm.com - Formation Exchange Server 2013 (70-341)
 
Alphorm.com-Formation windows 2012 (70-410)
Alphorm.com-Formation windows 2012 (70-410)Alphorm.com-Formation windows 2012 (70-410)
Alphorm.com-Formation windows 2012 (70-410)
 
Gâteau au citron et yaourt. Jesús et Ignacio. 2º D
Gâteau au citron et yaourt.  Jesús et Ignacio. 2º DGâteau au citron et yaourt.  Jesús et Ignacio. 2º D
Gâteau au citron et yaourt. Jesús et Ignacio. 2º D
 
Alerte aux spams et virus.
Alerte aux spams et virus.Alerte aux spams et virus.
Alerte aux spams et virus.
 
Diapo courrier électronique
Diapo courrier électroniqueDiapo courrier électronique
Diapo courrier électronique
 

Extbase et Fluid

  • 1. Réunion TUG Lausanne Présentation de Xavier Perseguers Monday, September 21, 2009
  • 2. Agenda Présentation du mini-projet Modèle de données métier Extbase Persistence des données Extbase Affichage et modification des informations Fluid + Extbase Idées d’amélioration Monday, September 21, 2009
  • 3. Présentation du mini-projet Monday, September 21, 2009
  • 4. Présentation du mini-projet Cahier des charges Base de données de films Liste de films (titre, réalisateur, genre) Ajout de nouveaux films Modification des données existantes Monday, September 21, 2009
  • 5. Modèle de données métier Monday, September 21, 2009
  • 6. Modèle de données métier Qu’est-ce qu’un film ? Monday, September 21, 2009
  • 7. Modèle de données métier Qu’est-ce qu’un film ? Titre Date de sortie Acteurs Un film? Réalisateur Genre Phrase marquante Monday, September 21, 2009
  • 8. Modèle de données métier Base de données On l’oublie ! Elle ne sert “à rien” On se concentre sur le métier ! N’essaie pas de tordre la cuillère, car c’est impossible. Tu dois essayer de te concentrer pour faire éclater la vérité : la cuillère n’existe pas ! Matrix Monday, September 21, 2009
  • 9. Modèle de données métier Attribut / Entité Attribut : Informations sur un objet nom, téléphone, âge, ... Entité : qui a une identité, qui a des méthodes Exemple : compte bancaire, personne Dépendant du métier Monday, September 21, 2009
  • 10. Modèle de données métier Entité, Attribut, ... Film : Entité / Agrégat racine (Aggregate Root) Réalisateur : relation 1:n vers une “Personne” Genre : relation 1:n vers un “Genre” Acteurs : relation m:n vers des “Personne”s Personne : Entité (Entity) Nom, Prénom, ... Genre : Object valeur (Value Object) Monday, September 21, 2009
  • 11. Modèle de données métier Monday, September 21, 2009
  • 12. Modèle de données métier 22.09.2009 - Génération du code du modèle de données uniquement ! Monday, September 21, 2009
  • 13. Modèle de données métier Création de l’extension Monday, September 21, 2009
  • 14. Modèle de données métier Création de l’extension Monday, September 21, 2009
  • 15. Modèle de données métier Création de l’extension Monday, September 21, 2009
  • 16. Modèle de données métier Création des objets Classes/Domain/Model/Genre.php : Monday, September 21, 2009
  • 17. Modèle de données métier Création des objets Classes/Domain/Model/Movie.php : Monday, September 21, 2009
  • 18. Modèle de données métier Création des objets Classes/Domain/Model/Movie.php : Compléter avec tous les attributs Classe à créer selon le même principe Monday, September 21, 2009
  • 19. Modèle de données métier Dépôt d’objets (repository) Point d’entrée pour accéder aux entités = Guichet Méthode add(), remove(), replace(), update() Méthodes findAll(), findBy*() Monday, September 21, 2009
  • 20. Modèle de données métier Création des dépôts d’objets Classes/Domain/Repository/MovieRepository.php : Classes/Domain/Repository/PersonRepository.php : Monday, September 21, 2009
  • 21. Persistence des données Monday, September 21, 2009
  • 22. Persistence des données Nom “compatible” avec Extbase Monday, September 21, 2009
  • 23. Persistence des données Monday, September 21, 2009
  • 24. Persistence des données Création des champs Répéter l’opération pour les tables : tx_movies_domain_model_person tx_movies_domain_model_movie Relation vers une autre entité Monday, September 21, 2009
  • 25. Persistence des données Création des champs Bon à savoir : Colonne “director” ↔ Attribut “Director” Colonne “firstname” ↔ Attribut “Firstname” Colonne “release_date” ↔ Attribut “ReleaseDate” Monday, September 21, 2009
  • 26. Persistence des données Réorganisation pour Extbase Monday, September 21, 2009
  • 27. Persistence des données Mise à jour des références Fichier ext_tables.php (pour toutes les tables) : Monday, September 21, 2009
  • 28. Persistence des données Mise à jour des références Fichier ext_tables.php (pour toutes les tables) : Monday, September 21, 2009
  • 29. Persistence des données Mise à jour des références Fichier Configuration/TCA/tca.php : Monday, September 21, 2009
  • 30. Persistence des données Mise à jour des références Fichier Configuration/TCA/tca.php : Monday, September 21, 2009
  • 31. Persistence des données Relation Modèle ↔ Tables Monday, September 21, 2009
  • 32. Persistence des données Relation Modèle ↔ Tables Pour toutes les relations uniquement Monday, September 21, 2009
  • 33. Démonstration (films dans le backend) Monday, September 21, 2009
  • 34. Affichage / Modification des données Monday, September 21, 2009
  • 35. Affichage des données Fonctionnement Création d’un plugin qui affiche les films Le plugin contient une action (p. ex. “index”) L’action prépare les données et les transmet à Fluid Fluid utilise un gabarit pour afficher les informations Monday, September 21, 2009
  • 36. Affichage des données Création d’un plugin Informer TYPO3 de la présence de notre plugin : Fichier ext_tables.php : Avec un texte traduisible, p. ex. : LLL:EXT:movies/Resources/Private/Language/locallang_db.xml:plugin.pi1 Monday, September 21, 2009
  • 37. Affichage des données Création d’un plugin Contrôleur Classes/Controller/MovieController.php C’est tout ! Monday, September 21, 2009
  • 38. Affichage des données Création d’un plugin Gabarit Resources/Private/Templates/Movie/index.html Nom du contrôleur Action Format de rendu (html par défaut) Monday, September 21, 2009
  • 39. Affichage des données Création d’un plugin Gabarit Resources/Private/Templates/Movie/index.html Tx_Movies_Domain_Model_Movie Monday, September 21, 2009
  • 40. Affichage des données Création d’un plugin Associer le code à exécuter pour afficher notre plugin Fichier ext_localconf.php : Monday, September 21, 2009
  • 41. Affichage des données Création d’un plugin Associer le code à exécuter pour afficher notre plugin Fichier ext_localconf.php : Attention : nom de plugin identique à celui du fichier ext_tables.php Monday, September 21, 2009
  • 42. Démonstration (ajout du plugin) Monday, September 21, 2009
  • 43. Modification des données Ajouter un film Créer l’action “new” qui est présente dans le gabarit : Elle doit afficher un formulaire de saisie qui une fois posté doit ajouter le nouveau film au dépôt Monday, September 21, 2009
  • 44. Modification des données Ajouter un film Gabarit Resources/Private/Templates/Movie/new.html : Nom du contrôleur Action Format de rendu (html par défaut) Monday, September 21, 2009
  • 45. Modification des données Ajouter un film Gabarit Resources/Private/Templates/Movie/new.html : Monday, September 21, 2009
  • 46. Modification des données Ajouter un film Actions “new” et “create” : Monday, September 21, 2009
  • 47. Modification des données Ajouter un film Référencer les nouvelles actions dans ext_localconf.php : Monday, September 21, 2009
  • 48. Modification des données Modifier un film Modifier le gabarit de la liste des films : Enregistrer les 2 nouvelles actions : Monday, September 21, 2009
  • 49. Modification des données Modifier un film Modifier le gabarit de la liste des films : Enregistrer les 2 nouvelles actions : Monday, September 21, 2009
  • 50. Modification des données Modifier un film Actions “edit” et “update” : Monday, September 21, 2009
  • 51. Modification des données Modifier un film Gabarit Resources/Private/Templates/Movie/edit.html : Nom du contrôleur Action Format de rendu (html par défaut) en plus ! valeur actuelle valeur actuelle Monday, September 21, 2009
  • 53. Idées d’amélioration Modèle de données Films : Gestion des acteurs ainsi que leur(s) rôle(s) Personnes : Ajout / Modification Monday, September 21, 2009
  • 54. Idées d’amélioration Plugins Films : Configuration FlexForm pour choisir un genre (DEMO) Ajout de l’affiche dans le rendu (DEMO) Intégration d’informations supplémentaires extraites de http://www.imdb.com (The Internet Movie Database) Personnes : Ajout / Modification Utilisation de ExtJS pour le rendu (DEMO) Monday, September 21, 2009
  • 56. Conclusion Résumé Extbase = Modèle et Contrôleur de MVC Fluid = Vue de MVC (mvc_extjs = “colle” entre Extbase, Fluid et ExtJS) Monday, September 21, 2009
  • 57. Conclusion Résumé Ajouter un élément newAction (affichage du formulaire) createAction (ajout au dépôt) Modifier un élément editAction (affichage du formulaire) updateAction (mise à jour dans le dépôt) Monday, September 21, 2009
  • 58. Conclusion Résumé Mise en place délicate sans Kickstarter Extbase “complet” Mais ... Le jeu en vaut la chandelle ! Monday, September 21, 2009
  • 59. Documentation et Liens Extbase, Fluid et l’extension blog_example http://forge.typo3.org/projects/show/typo3v4-mvc MVC + ExtJS http://forge.typo3.org/projects/show/extension-mvc_extjs Présentation et fichiers http://xavier.perseguers.ch/tutoriels/typo3/developpement/ extbase-fluid.html Monday, September 21, 2009
  • 60. Merci de votre attention Monday, September 21, 2009
  • 61. Merci de votre attention Questions ? Monday, September 21, 2009