Ecrire une extension pour twig dans symfony [FR]

Ecrire une extension pour twig dans symfony [FR]

Le but de cet article est d’expliquer comment écrire une fonction pour twig dans symfony. Je pars du principe que vous avez déjà un bundle avec des entités, dans mon cas se sera une entité News. La première étape est de définir le service dans le fichier services.xml: <services> <service id= »dayo.twig.dayo_news_extension » class= »Dayo\NewsBundle\Twig\NewsExtension »> <tag name= »twig.extension » /> <argument type= »service » id= »service_container » /> </service> </services> Ici nous définissons un service dayo.twig.dayo_news_extension qui a pour tag twig.extension et qui prend pour paramètre le conteneur de…

Lire la suite Lire la suite

knpmenubundle et Bootstrap [FR]

knpmenubundle et Bootstrap [FR]

Aujourd’hui, je vais parler de l’intégration de Bootstrap et KnpMenuBundle. Je pars du principe que vous avez déjà un template avec les ressources de Bootstrap d’inclus. L’installation et l’utilisation du bundle sont simples et bien expliquées la documentation. Afin de bien intégrer Bootstrap j’ai du chercher quelques petites sur le net que je rassemble ici. Afin que tout fonctionne correctement, les éléments du menu doivent être ajoutés comme suivant : $menu->addChild(‘Home’, array( ‘route’ => ‘route_name’, ‘routeParameters’ => array(‘slug’ => $myth->getSlug()), ‘attributes’ =>…

Lire la suite Lire la suite

Symfony2.1 + sonata-admin + sonata-user +fos-userbundle [EN]

Symfony2.1 + sonata-admin + sonata-user +fos-userbundle [EN]

Hy, everybody, today we will see how to install Symfony2.1 and the following bundles: FOSUserBundle SonataAdminBundle SonataUserBundle tl;dr: There is a GitHub repository with the project. The first step is to create the project with the following command line: composer create-project symfony/framework-standard-edition sonataadmin.fr Then we edit the composer.json file to add the bundles: « sonata-project/admin-bundle »: « dev-master », « friendsofsymfony/user-bundle »: « dev-master », « sonata-project/user-bundle »: « dev-master », « sonata-project/doctrine-orm-admin-bundle »: « dev-master » Update the AppKernel.php file to add the following bundles: new FOS\UserBundle\FOSUserBundle(), new Sonata\jQueryBundle\SonatajQueryBundle(), new Sonata\AdminBundle\SonataAdminBundle(), new Sonata\BlockBundle\SonataBlockBundle(), new Sonata\DoctrineORMAdminBundle\SonataDoctrineORMAdminBundle(),…

Lire la suite Lire la suite

Symfony2.1 + sonata-admin + sonata-user +fos-userbundle [FR]

Symfony2.1 + sonata-admin + sonata-user +fos-userbundle [FR]

Salut à vous, aujourd’hui nous allons voir comment installer Symfony2.1 et les bundles suivants: FOSUserBundle SonataAdminBundle SonataUserBundle La première étape est bien entendu la création du projet à l’aide de la commande suivante: composer create-project symfony/framework-standard-edition sonataadmin.fr Éditez le fichier composer.json pour y rajouter les bundles suivants : « sonata-project/admin-bundle »: « dev-master », « friendsofsymfony/user-bundle »: « dev-master », « sonata-project/user-bundle »: « dev-master », « sonata-project/doctrine-orm-admin-bundle »: « dev-master » Mettez à jour votre fichier AppKernel.php avec les bundles suivants : new FOS\UserBundle\FOSUserBundle(), new Sonata\jQueryBundle\SonatajQueryBundle(), new Sonata\AdminBundle\SonataAdminBundle(), new Sonata\BlockBundle\SonataBlockBundle(), new Sonata\DoctrineORMAdminBundle\SonataDoctrineORMAdminBundle(), new Knp\Bundle\MenuBundle\KnpMenuBundle(), new…

Lire la suite Lire la suite

Changer le format du fichier services d’un bundle

Changer le format du fichier services d’un bundle

Lors de l’installation du bundle KnpMenuBundle pour gérer les menus je me suis rendu compte que le fichier services de mon bundle était au format xml. Pensant que symfony2 chercher tous seul les fichiers, je l’ai supprimé et remplacé par un équivalent au format yml. Qu’elle ne fut pas ma surprise lorsque j’ai rechargé ma page de voir une erreur : InvalidArgumentException: The file « services.xml » does not exist En effet, afin de changer de ficher il faut modifier le fichier…

Lire la suite Lire la suite

Création d’une miniature avec HTML5

Création d’une miniature avec HTML5

En trainant sur le net j’ai trouvé un petit tuto qui explique comment faire la miniature d’une image en HTML5 sans uploader le fichier. L’image est afficher a coté du champ input. La première étape et de créer un formulaire avec un champ input de type file et une balise output pour afficher la miniature.. <!DOCTYPE html> <html> <head> <meta charset= »utf-8″ /> <title>HTML5 File Reader</title> </head> <body> <input type= »file » id= »files » /> <output id= »out »></output> <script> </script> </body> </html> Viens ensuite la…

Lire la suite Lire la suite

Connexion MySQL avec le mamp de macports

Connexion MySQL avec le mamp de macports

Pour faire suite à l’installation de mamp avec macports, j’ai voulu installer symfony2. Lors de la configuration de la base de données, je n’ai pas rencontré de problèmes particuliers. Lorsque j’ai voulu créer la base de données avec symfony j’ai eu l’erreur suivante : Could not create database for connection named `symfony` SQLSTATE[HY000] [2002] No such file or directory Après quelques recherches sur le net j’ai enfin trouvé la réponse. Lors de la configuration de la base de données, la…

Lire la suite Lire la suite

Un mamp avec macports 2

Un mamp avec macports 2

Voici la suite du premier post sur l’installation d’un mamp avec macports. Il nous faut configurer mysql, php et apache. Avant toute chose je conseil de rebooter le mac. Commençons par mysql: lancez la commande suivante afin de définir un nouveau mot de passe root pour mysql : /opt/local/lib/mysql5/bin/mysqladmin -u root password ‘changezmoi’ Passons à PHP: je ne modifie que date.timezone pour y mettre la valeur « Europe/Paris ». Le fichier php.ini se trouve dan s/opt/local/etc/php54. Viens enfin le tour d’apache. Le…

Lire la suite Lire la suite

Un mamp avec macports 1

Un mamp avec macports 1

Suite l’installation de mamp et n’étant pas satisfait de son utilisation, je me suis décider a regarder du coté des autres solutions. Celle qui ma le plus plu est l’installation à travers le gestionnaire de paquet macports. Concernant l’installation de macports rien de bien compliqué. Un fichier dmg a installer, vérifier que xcode est installé et dans les préférences xcode installer les « Command Line Tools ». Créé un fichier mamp.sh et copiez le contenu suivant: #launch with sudo # install all…

Lire la suite Lire la suite

xdebug et MAMP

xdebug et MAMP

Suite à l’installation de MAMP, j’ai voulu installer xdebug. Les premiers tutoriels que j’ai trouvés parlaient de précompilation avec différents outils. Rien de bien simple. Ce soir en m’y repenchant je suis tombé sur ce tuto assez simple. Depuis 2009 certaines choses ont changé, je vais donc réexpliquer la démarche. La première chose a faire et lancer MAMP et localiser ou ce situe le fichier php.ini ainsi que le dossier des extensions. Pour cela, allez sur http://127.0.0.1/MAMP/help.php?language=English et cherchez « php.ini »…

Lire la suite Lire la suite