Doctrine propose une fonctionnalité très utile pour créer des propriétés objets sur vos entité, il s'agit des embeddable.
Les embeddables permette de créer des objets dont les propriétés seront stockés dans la même table que l'entité à laquelle ils appartiennent (une sorte de one-to-one dans la même...
Depuis quelque temps et avec l'arrivé de Flex, le découpage applicatif en bundle ne fait plus partie des bonnes pratiques Symfony. Si cela amène plus de simplicité dans le code, un des avantages des bundles était leur capacité à étendre la configuration du framework grâce au répertoire DependencyInj...
Le composant de traduction
Symfony dispose d'un composant de traduction permettant de définir les traductions de vos textes dans plusieurs langues. Ces traductions seront stockées dans des fichiers (yml, xlf ou autre, par exemple messages.fr.yml).
Les domaines de traductions
Le composant de traducti...
Le cas simple
Symfony permet, grâce aux ParamConverter, de convertir automatiquement un paramètre d'url en une autre valeur. Ce quelque chose que j'utilise beaucoup pour récupérer mes entité grâce au DoctrineParamConverter. Par défaut ce converter va associer le paramètre id d'une route avec l'entit...
Vous utilisez peut être Insight, l'outils d'analyse de code de SensioLabs. Insight est capable d'analyser une application Symfony afin de vous remonter différentes alertes tant sur les bonnes pratiques que sur la sécurité ou encore la performance de votre code.
J'ai récemment été confronté à une ale...
La configuration des firewall de Symfony permet de spécifier url de redirection en cas d'authentification réussit grâce à l'option default_target_path des form_login. Hélas vous ne pouvez pas personnaliser cette url en fonction de l'utilisateur, ce qui peux s'avérer utile si par exemple vous avez di...
Lorsque vous faites une requête avec Doctrine, les résultats sont retournés sous forme d'un tableau. Ce tableau est indexé numériquement à partir de 0. Il peut s'avérer très utile d'indexer ce tableau de résultats d'une autre façon en utilisant par exemple l'id de l'entité ou tout autre champ unique...
Introduction
Par default Doctrine vous retourne le résultat de vos requête soit dans un tableau d'entité, soit dans un tableau à plusieurs dimensions selon le mode d'hydratation que vous avez choisi (HYDRATE_OBJECT ou HYDRATE_ARRAY).
L'hydratation en tableau est souvent utilisé pour des gains de per...
Lors de la validation d'un formulaire, le besoin peut être de valider différemment les données selon le bouton cliquer lors de la soumission du formulaire. L'option validation_groups prend habituellement un tableau de groupes de validation mais accepte également une fonction de callback. Ce callback...
Il s'agit d'un problème que j'ai rencontré récemment, comment filtrer les résultats d'une relation entre deux entité. Doctrine permet de faire ça très simplement en ajoutant une condition sur une jointure.
Contexte
J'ai une entité Article et une entité Comment avec une relation OneToMany (Comments) ...
Introduction
Symfony2 possède de base un générateur de CRUD accessible via la commande php app/console generate:doctrine:crud. Cependant le résultat obtenu, bien que fonctionnel, reste loin de ce qu'on a pu connaître avec l'admin generator de Symfony 1.4.
Cette commande génère un nouveau contrôleur ...