Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 22-06-2009 14:38:14

Delprog
Administrateur
Date d'inscription: 29-09-2008
Messages: 670

[Résolu][ZF 1.8]Héritage controlleur global et autoload

Bonjour,

Petite question, jusqu'à maintenant je fonctionnais avec un controlleur d'actions global qu'étendent tous les controllers d'actions de l'application, et qui lui même étend un super controller qui étend Zend_Controller_Action.

En gros Zend_Controller_Action > Tight_Controller_Action > GlobalController > IndexController.

L'arbo:

Code:

application/
    configs/
        application.ini
    controllers/
        GlobalController.php
        IndexController.php

etc.

Jusqu'à maintenant je faisais dans les controllers:

Code:

require_once 'GlobalController.php';

class IndexController extends GlobalController
{
}

Comment faire pour que l'autoloader charge spontanément le GlobalController ?

Merci,

A+ benjamin.

Dernière modification par Delprog (23-06-2009 11:23:52)


http://www.anonymation.com/ - anonymation - Studio de création.
http://code.anonymation.com/ - anonymation - blog - développement et architecture web

Hors ligne

 

#2 22-06-2009 14:56:55

philippe
Administrateur
Lieu: Grenoble
Date d'inscription: 01-03-2007
Messages: 1624

Re: [Résolu][ZF 1.8]Héritage controlleur global et autoload

Tu le mets dans un répertoire présent dans l'include_path.

A+, Philippe


twitter : @plv ; kitpages.fr : Création de sites internet à Grenoble et Paris

Hors ligne

 

#3 22-06-2009 15:49:53

Delprog
Administrateur
Date d'inscription: 29-09-2008
Messages: 670

Re: [Résolu][ZF 1.8]Héritage controlleur global et autoload

Oui smile

Mais je me disais que l'auto-loader était capable de charger tout seul tout ce qui se trouve dans le dossier application.

Comme je trouve ça logique de placer ce controllers avec les autres, puisqu'il ne concerne que l'application (pas dans le dossier library par ex.), je dois donc ajouter à l'include_path tout le dossier application ou application/controllers.

De plus, je ne comprend pas cette ligne dans le application.ini proposé :

Code:

includePaths.library = APPLICATION_PATH "/../library"

Puisque dans l'index.php on a :

Code:

set_include_path(implode(PATH_SEPARATOR, array(
    realpath(APPLICATION_PATH . '/../library'),
    get_include_path(),
)));

Avant que le Boostrap soit invoqué.

Parce que bêtement j'ai essayé de faire:

Code:

includePaths.controllers = APPLICATION_PATH "/controllers"

qui ne fonctionne pas.

Edit: Je commence à comprendre le fonctionnement smile en ajoutant

Code:

autoloaderNamespaces.1 = "Global"

dans le fichier de config, ça fonctionne. Tout est basé sur les namespaces.

A+ benjamin.

Dernière modification par Delprog (22-06-2009 15:58:46)


http://www.anonymation.com/ - anonymation - Studio de création.
http://code.anonymation.com/ - anonymation - blog - développement et architecture web

Hors ligne

 

#4 23-06-2009 11:23:41

Delprog
Administrateur
Date d'inscription: 29-09-2008
Messages: 670

Re: [Résolu][ZF 1.8]Héritage controlleur global et autoload

Je clos le sujet, j'avais pas assimilé Zend_Application encore smile

J'en ouvre un autre pour discuter de choses plus sérieuses.


http://www.anonymation.com/ - anonymation - Studio de création.
http://code.anonymation.com/ - anonymation - blog - développement et architecture web

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages