Bonjour tout le monde,
Après de soirées entière de recherche, et quelques longues lectures du code source, je n'arrive toujours pas à faire ce que j'aimerais.
En l'occurrence il est question de configurer le dossier par défaut des Helpers.
Pour faire bref mais complet à la fois.
Voici mon architecture telle que je la veux :
J'aimerais que le dossier en gras dans cette liste, soit mon dossier par défaut, aussi je précise que mes helpers ressemblent à ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 index.php /app/home/views/scripts/index/ /app/user/views/scripts/index/ /app/user/views/scripts/manager/ ... /app/common/js/ /app/common/css/ /app/common/helpers/ /app/common/layouts/ /lib/local/... /lib/Zend/... ... /skin/home/css /skin/home/js /skin/home/images /skin/user/... ...
J'ai donc deux questions.
Code : Sélectionner tout - Visualiser dans une fenêtre à part class Helpers_MonHelper extends \Zend_View_Helper_Abstract
Est-ce que étendre mon helper de Zend_View_Helper_Abstract est la bonne solution pour utiliser mon helper dans ma vue comme ceci :
et : comment accéder à mes helpers ?!
Code : Sélectionner tout - Visualiser dans une fenêtre à part $this->MonHelper();
N'ayant pas de Bootstrap j'ai mis ceci dans mon index.php :
Le problème avec ça, c'est que ca me définit bien mon dossier d'helper, mais ca ne reste pas enregistré, si juste apres je fais un var_dump du getHelperPath, j'ai bien mon dossier. Mais si je fais le même var_dump dans un controller ou une vue, je n'ai plus que le dossier de base proposé par Zend, à savoir
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $view = new Zend_View(); $view->setHelperPath('./app/common/helpers', 'Helpers');
/app/home/views/helpers
Comment dois-je faire ?
Ah, je sais qu'il est aussi possible de définir l'helpeur dans le fichier ini mais cette méthode ne m'inspire pas trop. Est-ce un tord ?
Merci d'avance pour votre attention et votre aide !
Partager