Où dois-variables Constantes vivre en bundle Symfony2
Peut-être que certains vont le voir, la question stupide, mais il ne l'est pas.
je me demande où doit Constante doit vivre dans le Bundle Symfony2,
J'ai utilisé dans d'autres cadres pour créer mon constantes variable dans les Modèles, mais depuis, dans Symfony2, je suis à l'aide de Entity, je suis un peu confus.
Devrait-il vivre à l'intérieur d' => Entité, Contrôleur, le Service ou le même fichier de configuration.
- Votre question est un peu générique, il dépend entièrement de ce que la constante de définition.
Vous devez vous connecter pour publier un commentaire.
Pour ma part, j'aime utiliser
Entity Constats
pour de simples relations. Par exemple, disons que vous avez un attribut de votre entité appeléestatus
qui ne peut qu'avoir des valeurs entre 0 et 2. Un supplément destatus
entité peut être exagéré dans ce scénario, j'ai donc tout simplement de les définir commeconstants
:Il vous permet de vérifier simplement une
status
en les comparant à des constantes:Ou même dans twig:
Ou dans un
QueryBuilder
:Il s'est avéré être très efficace pour moi.
Comme d'autres réponses point pour les constantes globales doit absolument être évitée. Utiliser des paramètres pour cela.
Qu'il semble être difficile de savoir quand utiliser
Parameters
:Prises à partir de la officiel des meilleures pratiques:
Vous pouvez envisager d'utiliser des paramètres, si ces valeurs changent. Un exemple serait l'exécution de votre application dans de multiples environnements. À l'aide de paramètres vous donnera le pouvoir de s'adapter aux changements de l'environnement sans mettre à jour votre base de code.
Si vous signez un bundle symfony comme "FOSUserBundle", vous en trouverez une bonne utilisation et un exemple pour cela.
Il y a définitions de constantes:
Je ne pense pas qu'il y est un bon endroit pour stocker des variables constantes. En fait cela dépend de ce que cette constante variable est sur: si cela est lié avec l'entité, il doit être une entité en constante; si c'est spécifique pour le service de doivent être le service est constant.
Une chose qui doit être évitée est de mettre des constantes dans le fichier de configuration, à moins que ça va changer souvent comme décrit dans Symfony meilleures pratiques