2011-07-28 5 views
0

Selon Symfony doc de et tutoriels, il semble que les classes de formulaire ne sont à mettre ici:Symfony: classes de formulaire spécifiques à l'application?

/%SF_BASE_DIR%/lib/form/ 

Mais si votre site a de multiples applications (frontend, back-end, etc.) et vous avez besoin d'une classe de formulaire uniquement pour l'une de ces applications? Existe-t-il un endroit spécifique pour placer la classe de formulaire sous votre répertoire d'application où il sera automatiquement chargé? J'ai essayé le suivant mais il n'a pas autoload:

/%SF_BASE_DIR%/apps/backend/lib/ 
/%SF_BASE_DIR%/apps/backend/lib/form/ 

Je sais que vous pouvez modifier les répertoires sont chargés automatiquement, mais je suis en train de savoir s'il y a juste quelques points par défaut dans le répertoire de l'application que devrait y entrer. S'il y a, le doc ne semble pas le préciser, au moins que je peux voir ...

Répondre

0

Cela pourrait fonctionner pour vous. Dans les cas où j'ai des formulaires spécifiques aux applications/modules qui étaient nettement différents de ceux par défaut, mais qui voulaient conserver la classe de formulaire normale (parce que je l'utilise dans le backend), je les ai placés dans le répertoire du module correspondant , tels que /%SF_BASE_DIR%/apps/frontend/modules/xyz/form/

Ils ne se chargent pas automatiquement, mais il n'y a qu'un seul fichier qui en a besoin. Je viens de mettre un seul require_once en haut de la classe d'action de ce module, tels que:

# apps/frontend/modules/xyz/actions/actions.class.php 
require_once dirname(__FILE__).'/../form/FrontendXyzForm.class.php'; 

class xyzActions extends sfActions { 
... 
Questions connexes