Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 22-03-2015 19:56:02

ealias
Nouveau membre
Date d'inscription: 22-03-2015
Messages: 2

Routage URL dans module Application

Bonjour,

Quelque chose me chiffone ! Je vois en récupérant le squelette d'application Zend que dans le module Application et plus précisément dans le fichier module.config. php nous avons ceci :

Code:

[lang=php]
            // The following is a route to simplify getting started creating
            // new controllers and actions without needing to create a new
            // module. Simply drop new controllers in, and you can access them
            // using the path /application/:controller/:action
            'application' => array(
                'type'    => 'Literal',
                'options' => array(
                    'route'    => '/application',
                    'defaults' => array(
                        '__NAMESPACE__' => 'Application\Controller',
                        'controller'    => 'Index',
                        'action'        => 'index',
                    ),
                ),
                'may_terminate' => true,
                'child_routes' => array(
                    'default' => array(
                        'type'    => 'Segment',
                        'options' => array(
                            'route'    => '/[:controller[/:action]]',
                            'constraints' => array(
                                'controller' => '[a-zA-Z][a-zA-Z0-9_-]*',
                                'action'     => '[a-zA-Z][a-zA-Z0-9_-]*',
                            ),
                            'defaults' => array(
                            ),
                        ),
                    ),
                ),

.....

Code:

[lang=php]
 'controllers' => array(
        'invokables' => array(
            'Application\Controller\Index' => 'Application\Controller\IndexController',
            'Application\Controller\Test' => 'Application\Controller\TestController',
        ),
    ),

Donc à la vue de ceci je me dis que j'ai juste à créer un controller (TestController avec une action index) et une vue dans le module Application et je ne dois plus me préoccuper des routes. Je renseigne également mon controller dans les invokables.  Or je ne sais pas accéder à l'url : http://localhost/application/Test/index.

Aurais-je oublier quelque chose ?

Hors ligne

 

#2 22-03-2015 20:04:13

tdutrion
Administrateur
Lieu: Dijon, Paris, Edinburgh
Date d'inscription: 23-12-2009
Messages: 614
Site web

Re: Routage URL dans module Application

Bonjour,

"Or je ne sais pas accéder à l'url" n'est pas une description très précise du problème...

Si tu as une 404, vérifie que tu as bien activé le mod rewrite si tu es sur Apache. Si tu es sur le serveur de dev intégré à php5.4+ n'oublie pas de spécifier l'index.php comme point d'entrée.

Hors ligne

 

#3 23-03-2015 09:24:00

flobrflo
Membre
Lieu: Marseille
Date d'inscription: 26-04-2013
Messages: 376

Re: Routage URL dans module Application

Hello smile

alors en fait tu ne doit pas laisser l'option 'defaults' de ta route vide, malheureusement tu doi préciser dans quel controleur tu veux aller chercher tes fonctions ^^

considère '/[:controller[/:action]]', comme le nommage de tes paramètre $_GET ^^

Edit :
Il faudra donc quelque chose du type :

Code:

[lang=php]
'defaults' => array(
            '__NAMESPACE__' => 'Application\Controller',
            'controller'    => 'Test',
            'action'        => 'index',
        ),

Edit 2 :
autant pour moi alors ^^
j'ai pas l'habitude de laisser des urls aussi ouvertes xD

Dernière modification par flobrflo (23-03-2015 11:53:10)

Hors ligne

 

#4 23-03-2015 11:11:32

Orkin
Administrateur
Lieu: Paris
Date d'inscription: 09-12-2011
Messages: 1261

Re: Routage URL dans module Application

Salut, sur une route de type Segment le "defaults" peut être vide on s'en fou. Les paramètres get par défaut pour l'url sont reconnus quand il y a controller et action donc l'url devrait être http://localhost/application/test/index pour faire : http://localhost/module/controller/action

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