Présentation de symfony - Human talks aux docks le 8 juillet 2014
Upcoming SlideShare
Loading in...5
×
 

Présentation de symfony - Human talks aux docks le 8 juillet 2014

on

  • 144 views

 

Statistics

Views

Total Views
144
Views on SlideShare
144
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Présentation de symfony - Human talks aux docks le 8 juillet 2014 Présentation de symfony - Human talks aux docks le 8 juillet 2014 Presentation Transcript

  • Présentation de Symfony - Human Talk aux Docks le 8 juillet 2014 Page 1/12InfoSaône - Tony Galmiche Création de Bundle avec Symfony Présenté par Tony Galmiche Human Talk aux Docks Numérique le 8 juillet 2014
  • Présentation de Symfony - Human Talk aux Docks le 8 juillet 2014 Page 2/12InfoSaône - Tony Galmiche Présentation de Symfony http://symfony.com/
  • Présentation de Symfony - Human Talk aux Docks le 8 juillet 2014 Page 3/12InfoSaône - Tony Galmiche Présentation de Packagist https://packagist.org/
  • Présentation de Symfony - Human Talk aux Docks le 8 juillet 2014 Page 4/12InfoSaône - Tony Galmiche Installation avec Composer et Packagist curl -s https://getcomposer.org/installer | php Installation de composer pour gérer les dépendances des modules : Installation de Symfony avec composer et Packagist : php composer.phar create-project symfony/framework- standard-edition path_project_symfony 2.5.* Configuration : http://localhost/config.php Environnement de développement: Configuration : http://localhost/app_dev.php/ Documentation : http://symfony.com/fr/doc/master/book/installation.html
  • Présentation de Symfony - Human Talk aux Docks le 8 juillet 2014 Page 5/12InfoSaône - Tony Galmiche Environnement de démo par défaut
  • Présentation de Symfony - Human Talk aux Docks le 8 juillet 2014 Page 6/12InfoSaône - Tony Galmiche Création d'un Bundle (Module) php app/console generate:bundle --namespace=Acme/HelloBundle --format=yml Création du Bundle : Enregistrement du Bundle : public function registerBundles() { $bundles = array( // ... new AcmeHelloBundleAcmeHelloBundle(), Routage : # app/config/routing.yml acme_hello: resource: "@AcmeHelloBundle/Resources/config/routing.yml" prefix: / Doc : http://symfony.com/fr/doc/master/book/page_creation.html
  • Présentation de Symfony - Human Talk aux Docks le 8 juillet 2014 Page 7/12InfoSaône - Tony Galmiche Contrôleur et vue avec Twig Contrôleur : class HelloController extends Controller { public function indexAction($name) { return $this->render( 'AcmeHelloBundle:Hello:index.html.twig', array('name' => $name)); } } Vue : {# src/Acme/HelloBundle/Resources/views/Hello/index.html.twig #} {% extends '::base.html.twig' %} {% block body %} Hello {{ name }}! {% endblock %} Doc : http://symfony.com/fr/doc/master/book/page_creation.html
  • Présentation de Symfony - Human Talk aux Docks le 8 juillet 2014 Page 8/12InfoSaône - Tony Galmiche Doctrine et les bases de données Création d'une entité (table) : php app/console doctrine:generate:entity --entity="AcmeStoreBundle:Product" --fields="name:string(255) price:float description:text" Class générée : // src/Acme/StoreBundle/Entity/Product.php namespace AcmeStoreBundleEntity; use DoctrineORMMapping as ORM; /** * @ORMEntity * @ORMTable(name="product") */ class Product { /** * @ORMId * @ORMColumn(type="integer") * @ORMGeneratedValue(strategy="AUTO") */ protected $id; Doc : http://symfony.com/fr/doc/master/book/doctrine.html
  • Présentation de Symfony - Human Talk aux Docks le 8 juillet 2014 Page 9/12InfoSaône - Tony Galmiche Manipulation des données avec le contrôleur // src/Acme/StoreBundle/Controller/DefaultController.php use AcmeStoreBundleEntityProduct; use SymfonyComponentHttpFoundationResponse; public function createAction() { $product = new Product(); $product->setName('A Foo Bar'); $product->setPrice('19.99'); $product->setDescription('Lorem ipsum dolor'); $em = $this->getDoctrine()->getManager(); $em->persist($product); $em->flush(); return new Response('Id du produit créé : '.$product->getId()); } Doc : http://symfony.com/fr/doc/master/book/doctrine.html
  • Présentation de Symfony - Human Talk aux Docks le 8 juillet 2014 Page 10/12InfoSaône - Tony Galmiche Générer un contrôleur CRUD basé sur une entité Doctrine Création du contrôleur avec les méthodes Create, Read, Update et Delete (CRUD) : php app/console generate:doctrine:crud --entity=AcmeBlogBundle:Post --format=annotation --with-write --no-interaction Doc : http://symfony.com/fr/doc/master/bundles/SensioGeneratorBundle/commands/generate_doctrine_crud.html Cette commande va générer le contrôleur CRUD mais également les vues twig associées pour pouvoir manipuler l'entité concernée. Cela va donc générer les formulaires pour créer, modifier, supprimer ou consulter les données. Ensuite il suffira d’utiliser twig pour mettre en page les formulaires par exemple avec l'aide de Bootstrap
  • Présentation de Symfony - Human Talk aux Docks le 8 juillet 2014 Page 11/12InfoSaône - Tony Galmiche Exemple de réalisation
  • Présentation de Symfony - Human Talk aux Docks le 8 juillet 2014 Page 12/12InfoSaône - Tony Galmiche F i n des questions ?